summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Regad <dregad@mantisbt.org>2021-01-24 17:45:05 +0100
committerDamien Regad <dregad@mantisbt.org>2021-01-24 17:45:05 +0100
commit77a8f9089e50da0a92dfc916a27648929c94045d (patch)
treebe228dd8c428ef70a3434608ef79afd34cda64c2
parent8856265c933087030627484c53d36ed5dae29e86 (diff)
parent558b2462eaabd933cfb6f1ad852ce0c5992bb4e1 (diff)
downloadadodb-77a8f9089e50da0a92dfc916a27648929c94045d.tar.gz
adodb-77a8f9089e50da0a92dfc916a27648929c94045d.tar.bz2
adodb-77a8f9089e50da0a92dfc916a27648929c94045d.zip
Merge branch 'release/5.21' into master
-rw-r--r--adodb-xmlschema.inc.php5
-rw-r--r--adodb.inc.php16
-rw-r--r--drivers/adodb-pdo.inc.php4
-rw-r--r--drivers/adodb-postgres64.inc.php7
4 files changed, 22 insertions, 10 deletions
diff --git a/adodb-xmlschema.inc.php b/adodb-xmlschema.inc.php
index 0a80b90f..8aea3d1a 100644
--- a/adodb-xmlschema.inc.php
+++ b/adodb-xmlschema.inc.php
@@ -1243,6 +1243,7 @@ class adoSchema {
/**
* @var long Original Magic Quotes Runtime value
* @access private
+ * @deprecated
*/
var $mgq;
@@ -1289,8 +1290,8 @@ class adoSchema {
* @param object $db ADOdb database connection object.
*/
function __construct( $db ) {
- // Initialize the environment
- $this->mgq = get_magic_quotes_runtime();
+ // PHP7.4 spits deprecated notice, PHP8 removed magic_* stuff
+ $this->mgq = version_compare(PHP_VERSION, '7.4.0', '<') && function_exists('get_magic_quotes_runtime') && get_magic_quotes_runtime();
if ($this->mgq !== false) {
ini_set('magic_quotes_runtime', 0);
}
diff --git a/adodb.inc.php b/adodb.inc.php
index d0d8f7c8..01d6b3dd 100644
--- a/adodb.inc.php
+++ b/adodb.inc.php
@@ -445,8 +445,10 @@ if (!defined('_ADODB_LAYER')) {
var $hasTransactions = true; /// has transactions
//--
var $genID = 0; /// sequence id used by GenID();
- /** @var bool|callable */
- var $raiseErrorFn = false; /// error function to call
+
+ /** @var bool|callable Error function to call */
+ var $raiseErrorFn = false;
+
var $isoDates = false; /// accepts dates in ISO format
var $cacheSecs = 3600; /// cache for 1 hour
@@ -471,10 +473,13 @@ if (!defined('_ADODB_LAYER')) {
var $ansiOuter = false; /// whether ansi outer join syntax supported
var $autoRollback = false; // autoRollback on PConnect().
var $poorAffectedRows = false; // affectedRows not working or unreliable
- /** @var bool|callable */
+
+ /** @var bool|callable Execute function to call */
var $fnExecute = false;
- /** @var bool|callable */
+
+ /** @var bool|callable Cache execution function to call */
var $fnCacheExecute = false;
+
var $blobEncodeType = false; // false=not required, 'I'=encode to integer, 'C'=encode to char
var $rsPrefix = "ADORecordSet_";
@@ -1754,7 +1759,8 @@ if (!defined('_ADODB_LAYER')) {
*/
function &_rs2rs(&$rs,$nrows=-1,$offset=-1,$close=true) {
if (! $rs) {
- return false;
+ $ret = false;
+ return $ret;
}
$dbtype = $rs->databaseType;
if (!$dbtype) {
diff --git a/drivers/adodb-pdo.inc.php b/drivers/adodb-pdo.inc.php
index 5c761aa8..f8ae1ff8 100644
--- a/drivers/adodb-pdo.inc.php
+++ b/drivers/adodb-pdo.inc.php
@@ -432,7 +432,7 @@ class ADODB_pdo extends ADOConnection {
return $this->_driver->SetTransactionMode($transaction_mode);
}
- return parent::SetTransactionMode($seqname);
+ return parent::SetTransactionMode($transaction_mode);
}
function beginTrans()
@@ -561,7 +561,7 @@ class ADODB_pdo extends ADOConnection {
}
if ($stmt) {
- if (isset($this->_driver)) {
+ if ($this->_driver instanceof ADODB_pdo) {
$this->_driver->debug = $this->debug;
}
if ($inputarr) {
diff --git a/drivers/adodb-postgres64.inc.php b/drivers/adodb-postgres64.inc.php
index b759d9fe..086bb275 100644
--- a/drivers/adodb-postgres64.inc.php
+++ b/drivers/adodb-postgres64.inc.php
@@ -1068,7 +1068,12 @@ class ADORecordSet_postgres64 extends ADORecordSet{
function _close()
{
- return @pg_free_result($this->_queryID);
+ if (!is_resource($this->_queryID)
+ || get_resource_type($this->_queryID) != 'pgsql result'
+ ) {
+ return true;
+ }
+ return pg_free_result($this->_queryID);
}
function MetaType($t,$len=-1,$fieldobj=false)