From: Robin Appelman Date: Mon, 5 Jul 2010 11:31:32 +0000 (+0200) Subject: fix affected frows and free_result in OC_DB X-Git-Tag: v3.0~355 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=4e12ce63f974ee4ee3b67740fa931967a7fdca0f;p=nextcloud-server.git fix affected frows and free_result in OC_DB --- diff --git a/inc/lib_base.php b/inc/lib_base.php index aa14d3cec00..f991e40dfd8 100755 --- a/inc/lib_base.php +++ b/inc/lib_base.php @@ -300,6 +300,8 @@ class OC_UTIL { */ class OC_DB { static private $DBConnection=false; + static private $affected=0; + static private $result=false; /** * connect to the datbase if not already connected */ @@ -356,12 +358,15 @@ class OC_DB { if($CONFIG_DBTYPE=='sqlite'){//fix differences between sql versions $cmd=str_replace('`','',$cmd); } - $result=self::$DBConnection->query($cmd); + $result=self::$DBConnection->exec($cmd); if (PEAR::isError($result)) { $entry='DB Error: "'.$result->getMessage().'"
'; $entry.='Offending command was: '.$cmd.'
'; die($entry); + }else{ + self::$affected=$result; } + self::$result=$result; return $result; } @@ -431,7 +436,7 @@ class OC_DB { * @return int */ static function affected_rows() { - self::$DBConnection->affectedRows(); + return self::$affected; } /** @@ -464,8 +469,11 @@ class OC_DB { * @param unknown_type $result * @return bool */ - static function free_result($result) { - $result->free(); + static function free_result() { + if(self::$result){ + self::$result->free(); + self::$result=false; + } } static public function disconnect(){