summaryrefslogtreecommitdiffstats
path: root/php-horde-Horde-Support-uuid.patch
diff options
context:
space:
mode:
Diffstat (limited to 'php-horde-Horde-Support-uuid.patch')
-rw-r--r--php-horde-Horde-Support-uuid.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/php-horde-Horde-Support-uuid.patch b/php-horde-Horde-Support-uuid.patch
new file mode 100644
index 0000000..0cfc163
--- /dev/null
+++ b/php-horde-Horde-Support-uuid.patch
@@ -0,0 +1,26 @@
+diff -up Horde_Support-2.0.0/lib/Horde/Support/Uuid.php.old Horde_Support-2.0.0/lib/Horde/Support/Uuid.php
+--- Horde_Support-2.0.0/lib/Horde/Support/Uuid.php.old 2012-11-06 17:23:48.000000000 +0100
++++ Horde_Support-2.0.0/lib/Horde/Support/Uuid.php 2012-11-06 17:36:23.000000000 +0100
+@@ -36,9 +36,20 @@ class Horde_Support_Uuid
+ */
+ public function generate()
+ {
++ $this->_uuid = NULL;
+ if (extension_loaded('uuid')) {
+- $this->_uuid = uuid_create();
+- } else {
++ if (function_exists("uuid_export")) {
++ // UUID extension from http://www.ossp.org/pkg/lib/uuid/
++ if (!uuid_create($ctx) && !uuid_make($ctx, UUID_MAKE_V4) && !uuid_export($ctx, UUID_FMT_STR, $str)) {
++ $this->_uuid = $str;
++ uuid_destroy($ctx);
++ }
++ } else {
++ // UUID extension from http://pecl.php.net/package/uuid
++ $this->_uuid = uuid_create();
++ }
++ }
++ if (!$this->_uuid) {
+ list($time_mid, $time_low) = explode(' ', microtime());
+ $time_low = (int)$time_low;
+ $time_mid = (int)substr($time_mid, 2) & 0xffff;