]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/Memcached_DataObject.php
Memcache_DataObject checks for PEAR::isError() on results
[quix0rs-gnu-social.git] / classes / Memcached_DataObject.php
index ccfd886a1d3dc3ce9ce8de594aa1c5287f5d8634..d50b4071d1eeaef3548dd992675498bd991fad31 100644 (file)
@@ -74,7 +74,7 @@ class Memcached_DataObject extends Safe_DataObject
             return $i;
         } else {
             $i = DB_DataObject::factory($cls);
-            if (empty($i)) {
+            if (empty($i) || PEAR::isError($i)) {
                 return false;
             }
             foreach ($kv as $k => $v) {
@@ -338,7 +338,11 @@ class Memcached_DataObject extends Safe_DataObject
         }
 
         $start = microtime(true);
-        $result = parent::_query($string);
+        $result = null;
+        if (Event::handle('StartDBQuery', array($this, $string, &$result))) {
+            $result = parent::_query($string);
+            Event::handle('EndDBQuery', array($this, $string, &$result));
+        }
         $delta = microtime(true) - $start;
 
         $limit = common_config('db', 'log_slow_queries');