2 commits - plugins/libkolab

Thomas Brüderli bruederli at kolabsys.com
Wed May 30 14:25:26 CEST 2012


 plugins/libkolab/lib/kolab_storage_cache.php  |    2 +-
 plugins/libkolab/lib/kolab_storage_folder.php |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 41910ec06170af085e6e2fc9c9dabb395474cd18
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Wed May 30 14:25:13 2012 +0200

    Don't parse new configuration objects with old Horde classes

diff --git a/plugins/libkolab/lib/kolab_storage_folder.php b/plugins/libkolab/lib/kolab_storage_folder.php
index 6683879..684ed35 100644
--- a/plugins/libkolab/lib/kolab_storage_folder.php
+++ b/plugins/libkolab/lib/kolab_storage_folder.php
@@ -439,7 +439,7 @@ class kolab_storage_folder
 
         // check kolab format version
         list($xmltype, $subtype) = explode('.', $object_type);
-        if (strpos($xml, '<' . $xmltype) !== false) {
+        if (strpos($xml, '<' . $xmltype) !== false && strpos($xml, 'xmlns=') === false) {
             // old Kolab 2.0 format detected
             $handler = class_exists('Horde_Kolab_Format') ? Horde_Kolab_Format::factory('XML', $xmltype, array('subtype' => $subtype)) : null;
             if (!is_object($handler) || is_a($handler, 'PEAR_Error')) {


commit f53a1662e348f3da416cac304b940959cb907cfa
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Wed May 30 14:24:23 2012 +0200

    Strip white-space from xml when caching

diff --git a/plugins/libkolab/lib/kolab_storage_cache.php b/plugins/libkolab/lib/kolab_storage_cache.php
index f138d34..cc9b38c 100644
--- a/plugins/libkolab/lib/kolab_storage_cache.php
+++ b/plugins/libkolab/lib/kolab_storage_cache.php
@@ -461,7 +461,7 @@ class kolab_storage_cache
         }
 
         if ($object['_formatobj']) {
-            $sql_data['xml'] = (string)$object['_formatobj']->write();
+            $sql_data['xml'] = preg_replace('!(</?[a-z0-9:-]+>)[\n\r\t\s]+!ms', '$1', (string)$object['_formatobj']->write());
             $sql_data['tags'] = ' ' . join(' ', $object['_formatobj']->get_tags()) . ' ';  // pad with spaces for strict/prefix search
             $sql_data['words'] = ' ' . join(' ', $object['_formatobj']->get_words()) . ' ';
         }





More information about the commits mailing list