MDL-55999 lib: Update ADOdb to version 5.20.7
authorSimey Lameze <simey@moodle.com>
Wed, 5 Oct 2016 02:57:42 +0000 (10:57 +0800)
committerSimey Lameze <simey@moodle.com>
Wed, 5 Oct 2016 02:57:42 +0000 (10:57 +0800)
100 files changed:
lib/adodb/adodb-active-record.inc.php
lib/adodb/adodb-active-recordx.inc.php
lib/adodb/adodb-csvlib.inc.php
lib/adodb/adodb-datadict.inc.php
lib/adodb/adodb-error.inc.php
lib/adodb/adodb-errorhandler.inc.php
lib/adodb/adodb-errorpear.inc.php
lib/adodb/adodb-exceptions.inc.php
lib/adodb/adodb-iterator.inc.php
lib/adodb/adodb-lib.inc.php
lib/adodb/adodb-memcache.lib.inc.php
lib/adodb/adodb-pager.inc.php
lib/adodb/adodb-pear.inc.php
lib/adodb/adodb-perf.inc.php
lib/adodb/adodb-php4.inc.php
lib/adodb/adodb-time.inc.php
lib/adodb/adodb-xmlschema.inc.php
lib/adodb/adodb-xmlschema03.inc.php
lib/adodb/adodb.inc.php
lib/adodb/datadict/datadict-access.inc.php
lib/adodb/datadict/datadict-db2.inc.php
lib/adodb/datadict/datadict-firebird.inc.php
lib/adodb/datadict/datadict-generic.inc.php
lib/adodb/datadict/datadict-ibase.inc.php
lib/adodb/datadict/datadict-informix.inc.php
lib/adodb/datadict/datadict-mssql.inc.php
lib/adodb/datadict/datadict-mssqlnative.inc.php
lib/adodb/datadict/datadict-mysql.inc.php
lib/adodb/datadict/datadict-oci8.inc.php
lib/adodb/datadict/datadict-postgres.inc.php
lib/adodb/datadict/datadict-sapdb.inc.php
lib/adodb/datadict/datadict-sqlite.inc.php
lib/adodb/datadict/datadict-sybase.inc.php
lib/adodb/drivers/adodb-access.inc.php
lib/adodb/drivers/adodb-ado.inc.php
lib/adodb/drivers/adodb-ado5.inc.php
lib/adodb/drivers/adodb-ado_access.inc.php
lib/adodb/drivers/adodb-ado_mssql.inc.php
lib/adodb/drivers/adodb-borland_ibase.inc.php
lib/adodb/drivers/adodb-csv.inc.php
lib/adodb/drivers/adodb-db2.inc.php
lib/adodb/drivers/adodb-db2oci.inc.php
lib/adodb/drivers/adodb-db2ora.inc.php
lib/adodb/drivers/adodb-fbsql.inc.php
lib/adodb/drivers/adodb-firebird.inc.php
lib/adodb/drivers/adodb-ibase.inc.php
lib/adodb/drivers/adodb-informix.inc.php
lib/adodb/drivers/adodb-informix72.inc.php
lib/adodb/drivers/adodb-ldap.inc.php
lib/adodb/drivers/adodb-mssql.inc.php
lib/adodb/drivers/adodb-mssqlnative.inc.php
lib/adodb/drivers/adodb-mssqlpo.inc.php
lib/adodb/drivers/adodb-mysql.inc.php
lib/adodb/drivers/adodb-mysqli.inc.php
lib/adodb/drivers/adodb-mysqlpo.inc.php
lib/adodb/drivers/adodb-mysqlt.inc.php
lib/adodb/drivers/adodb-netezza.inc.php
lib/adodb/drivers/adodb-oci8.inc.php
lib/adodb/drivers/adodb-oci805.inc.php
lib/adodb/drivers/adodb-oci8po.inc.php
lib/adodb/drivers/adodb-oci8quercus.inc.php
lib/adodb/drivers/adodb-odbc.inc.php
lib/adodb/drivers/adodb-odbc_db2.inc.php
lib/adodb/drivers/adodb-odbc_mssql.inc.php
lib/adodb/drivers/adodb-odbc_mssql2012.inc.php [new file with mode: 0644]
lib/adodb/drivers/adodb-odbc_oracle.inc.php
lib/adodb/drivers/adodb-odbtp.inc.php
lib/adodb/drivers/adodb-odbtp_unicode.inc.php
lib/adodb/drivers/adodb-oracle.inc.php
lib/adodb/drivers/adodb-pdo.inc.php
lib/adodb/drivers/adodb-pdo_mssql.inc.php
lib/adodb/drivers/adodb-pdo_mysql.inc.php
lib/adodb/drivers/adodb-pdo_oci.inc.php
lib/adodb/drivers/adodb-pdo_pgsql.inc.php
lib/adodb/drivers/adodb-pdo_sqlite.inc.php
lib/adodb/drivers/adodb-postgres.inc.php
lib/adodb/drivers/adodb-postgres64.inc.php
lib/adodb/drivers/adodb-postgres7.inc.php
lib/adodb/drivers/adodb-postgres8.inc.php
lib/adodb/drivers/adodb-postgres9.inc.php
lib/adodb/drivers/adodb-proxy.inc.php
lib/adodb/drivers/adodb-sapdb.inc.php
lib/adodb/drivers/adodb-sqlanywhere.inc.php
lib/adodb/drivers/adodb-sqlite.inc.php
lib/adodb/drivers/adodb-sqlite3.inc.php
lib/adodb/drivers/adodb-sqlitepo.inc.php
lib/adodb/drivers/adodb-sybase.inc.php
lib/adodb/drivers/adodb-sybase_ase.inc.php
lib/adodb/drivers/adodb-vfp.inc.php
lib/adodb/perf/perf-db2.inc.php
lib/adodb/perf/perf-informix.inc.php
lib/adodb/perf/perf-mssql.inc.php
lib/adodb/perf/perf-mssqlnative.inc.php
lib/adodb/perf/perf-mysql.inc.php
lib/adodb/perf/perf-oci8.inc.php
lib/adodb/perf/perf-postgres.inc.php
lib/adodb/pivottable.inc.php
lib/adodb/rsfilter.inc.php
lib/adodb/toexport.inc.php
lib/adodb/tohtml.inc.php

index 2c4b878..ae58564 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /*
 
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Latest version is available at http://adodb.sourceforge.net
index 9e4f7c9..f7b5179 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /*
 
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Latest version is available at http://adodb.sourceforge.net
index c306235..bded3ac 100644 (file)
@@ -8,7 +8,7 @@ $ADODB_INCLUDED_CSV = 1;
 
 /*
 
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 5f2ffc9..f2b29a6 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 307b8b5..3f2ab90 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 3b20cc2..e8dcaab 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 733eb17..db3e2a2 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 1f92c4a..b3ffc38 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
@@ -33,16 +33,16 @@ var $database = '';
                case 'EXECUTE':
                        $this->sql = is_array($p1) ? $p1[0] : $p1;
                        $this->params = $p2;
-                       $s = "$dbms error: [$errno: $errmsg] in $fn(\"$this->sql\")\n";
+                       $s = "$dbms error: [$errno: $errmsg] in $fn(\"$this->sql\")";
                        break;
 
                case 'PCONNECT':
                case 'CONNECT':
                        $user = $thisConnection->user;
-                       $s = "$dbms error: [$errno: $errmsg] in $fn($p1, '$user', '****', $p2)\n";
+                       $s = "$dbms error: [$errno: $errmsg] in $fn($p1, '$user', '****', $p2)";
                        break;
                default:
-                       $s = "$dbms error: [$errno: $errmsg] in $fn($p1, $p2)\n";
+                       $s = "$dbms error: [$errno: $errmsg] in $fn($p1, $p2)";
                        break;
                }
 
index 6b75388..4c8dffc 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 7711290..503bb15 100644 (file)
@@ -6,7 +6,7 @@ global $ADODB_INCLUDED_LIB;
 $ADODB_INCLUDED_LIB = 1;
 
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
@@ -426,7 +426,7 @@ function _adodb_getcount(&$zthis, $sql,$inputarr=false,$secs2cache=0)
                if ( strpos($sql, '_ADODB_COUNT') !== FALSE ) {
                        $rewritesql = preg_replace('/^\s*?SELECT\s+_ADODB_COUNT(.*)_ADODB_COUNT\s/is','SELECT COUNT(*) ',$sql);
                } else {
-                       $rewritesql = preg_replace('/^\s*?SELECT\s.*?\s+(.*?)\s+FROM\s/is','SELECT COUNT(*) FROM ',$sql);
+                       $rewritesql = preg_replace('/^\s*SELECT\s.*\s+FROM\s/Uis','SELECT COUNT(*) FROM ',$sql);
                }
                // fix by alexander zhukov, alex#unipack.ru, because count(*) and 'order by' fails
                // with mssql, access and postgresql. Also a good speedup optimization - skips sorting!
index 0714561..4dde732 100644 (file)
@@ -11,7 +11,7 @@ if (empty($ADODB_INCLUDED_CSV)) include_once(ADODB_DIR.'/adodb-csvlib.inc.php');
 
 /*
 
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 15c371b..0221975 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-       @version   v5.20.3  01-Jan-2016
+       @version   v5.20.7  20-Sep-2016
        @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
        @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
          Released under both BSD license and Lesser GPL library license.
index 634eb15..237dcfe 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 1629996..3dfaab4 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 926dbac..50963f0 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index a2991f3..df718cf 100644 (file)
@@ -3,7 +3,7 @@
 ADOdb Date Library, part of the ADOdb abstraction library
 Download: http://adodb.sourceforge.net/#download
 
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
index 0890155..ca5fa56 100644 (file)
@@ -157,7 +157,6 @@ class dbObject {
        * Destroys the object
        */
        function destroy() {
-               unset( $this );
        }
 
        /**
@@ -265,12 +264,14 @@ class dbTable extends dbObject {
                switch( $this->currentElement ) {
                        case 'INDEX':
                                if( !isset( $attributes['PLATFORM'] ) OR $this->supportedPlatform( $attributes['PLATFORM'] ) ) {
-                                       xml_set_object( $parser, $this->addIndex( $attributes ) );
+                                       $index = $this->addIndex( $attributes );
+                                       xml_set_object( $parser,  $index );
                                }
                                break;
                        case 'DATA':
                                if( !isset( $attributes['PLATFORM'] ) OR $this->supportedPlatform( $attributes['PLATFORM'] ) ) {
-                                       xml_set_object( $parser, $this->addData( $attributes ) );
+                                       $data = $this->addData( $attributes );
+                                       xml_set_object( $parser, $data );
                                }
                                break;
                        case 'DROP':
@@ -2196,7 +2197,6 @@ class adoSchema {
        function Destroy() {
                ini_set("magic_quotes_runtime", $this->mgq );
                #set_magic_quotes_runtime( $this->mgq );
-               unset( $this );
        }
 }
 
index 45a59bb..c1ecb88 100644 (file)
@@ -175,7 +175,6 @@ class dbObject {
        * Destroys the object
        */
        function destroy() {
-               unset( $this );
        }
 
        /**
@@ -290,12 +289,14 @@ class dbTable extends dbObject {
                switch( $this->currentElement ) {
                        case 'INDEX':
                                if( !isset( $attributes['PLATFORM'] ) OR $this->supportedPlatform( $attributes['PLATFORM'] ) ) {
-                                       xml_set_object( $parser, $this->addIndex( $attributes ) );
+                                       $index = $this->addIndex( $attributes );
+                                       xml_set_object( $parser,  $index );
                                }
                                break;
                        case 'DATA':
                                if( !isset( $attributes['PLATFORM'] ) OR $this->supportedPlatform( $attributes['PLATFORM'] ) ) {
-                                       xml_set_object( $parser, $this->addData( $attributes ) );
+                                       $data = $this->addData( $attributes );
+                                       xml_set_object( $parser, $data );
                                }
                                break;
                        case 'DROP':
@@ -2378,7 +2379,6 @@ class adoSchema {
        function Destroy() {
                ini_set("magic_quotes_runtime", $this->mgq );
                #set_magic_quotes_runtime( $this->mgq );
-               unset( $this );
        }
 }
 
index b6496e6..4967f6a 100644 (file)
@@ -14,7 +14,7 @@
 /**
        \mainpage
 
-       @version   v5.20.3  01-Jan-2016
+       @version   v5.20.7  20-Sep-2016
        @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
        @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
 if (!defined('_ADODB_LAYER')) {
        define('_ADODB_LAYER',1);
 
+       // The ADOdb extension is no longer maintained and effectively unsupported
+       // since v5.04. The library will not function properly if it is present.
+       if(defined('ADODB_EXTENSION')) {
+               $msg = "Unsupported ADOdb Extension (v" . ADODB_EXTENSION . ") detected! "
+                       . "Disable it to use ADOdb";
+
+               $errorfn = defined('ADODB_ERROR_HANDLER') ? ADODB_ERROR_HANDLER : false;
+               if ($errorfn) {
+                       $conn = false;
+                       $errorfn('ADOdb', basename(__FILE__), -9999, $msg, null, null, $conn);
+               } else {
+                       die($msg . PHP_EOL);
+               }
+       }
+
        //==============================================================================================
        // CONSTANT DEFINITIONS
        //==============================================================================================
@@ -218,7 +233,7 @@ if (!defined('_ADODB_LAYER')) {
                /**
                 * ADODB version as a string.
                 */
-               $ADODB_vers = 'v5.20.3  01-Jan-2016';
+               $ADODB_vers = 'v5.20.7  20-Sep-2016';
 
                /**
                 * Determines whether recordset->RecordCount() is used.
@@ -659,23 +674,23 @@ if (!defined('_ADODB_LAYER')) {
                }
                if (isset($rez)) {
                        $err = $this->ErrorMsg();
+                       $errno = $this->ErrorNo();
                        if (empty($err)) {
                                $err = "Connection error to server '$argHostname' with user '$argUsername'";
                        }
-                       $ret = false;
                } else {
                        $err = "Missing extension for ".$this->dataProvider;
-                       $ret = 0;
+                       $errno = 0;
                }
                if ($fn = $this->raiseErrorFn) {
-                       $fn($this->databaseType,'CONNECT',$this->ErrorNo(),$err,$this->host,$this->database,$this);
+                       $fn($this->databaseType, 'CONNECT', $errno, $err, $this->host, $this->database, $this);
                }
 
                $this->_connectionID = false;
                if ($this->debug) {
                        ADOConnection::outp( $this->host.': '.$err);
                }
-               return $ret;
+               return false;
        }
 
        function _nconnect($argHostname, $argUsername, $argPassword, $argDatabaseName) {
@@ -1117,20 +1132,35 @@ if (!defined('_ADODB_LAYER')) {
                                $sqlarr = explode('?',$sql);
                                $nparams = sizeof($sqlarr)-1;
 
+                               if (!$array_2d) {
+                                       // When not Bind Bulk - convert to array of arguments list
+                                       $inputarr = array($inputarr);
+                               } else {
+                                       // Bulk bind - Make sure all list of params have the same number of elements
+                                       $countElements = array_map('count', $inputarr);
+                                       if (1 != count(array_unique($countElements))) {
+                                               $this->outp_throw(
+                                                       "[bulk execute] Input array has different number of params  [" . print_r($countElements, true) .  "].",
+                                                       'Execute'
+                                               );
+                                               return false;
+                                       }
+                                       unset($countElements);
+                               }
                                // Make sure the number of parameters provided in the input
                                // array matches what the query expects
-                               if ($nparams != count($inputarr)) {
+                               $element0 = reset($inputarr);
+                               if ($nparams != count($element0)) {
                                        $this->outp_throw(
-                                               "Input array has " . count($inputarr) .
+                                               "Input array has " . count($element0) .
                                                " params, does not match query: '" . htmlspecialchars($sql) . "'",
                                                'Execute'
                                        );
                                        return false;
                                }
 
-                               if (!$array_2d) {
-                                       $inputarr = array($inputarr);
-                               }
+                               // clean memory
+                               unset($element0);
 
                                foreach($inputarr as $arr) {
                                        $sql = ''; $i = 0;
index 0d2f36b..25a72a8 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index f5fb983..a3fa783 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 2f5372f..8f85f89 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index ed84fff..0521cc6 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 5370417..c6629d1 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 98263a6..8ab2b6e 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 4ffb9bb..1eae3af 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index bab0c39..8c88404 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index c1433ae..0148915 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 6cedf95..b758ede 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 98e6510..be2700e 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index cadfc02..9a7671b 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 4b6eb6f..8ec2927 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 0650103..d0e84f6 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 71a672f..b020d36 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index d8c1c8d..bcfc899 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index b9120a4..0205c93 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index defb1f5..fa1629b 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 Released under both BSD license and Lesser GPL library license.
index d8342e6..d6993ed 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 978f2bf..ad5f61b 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index f97435f..be0f1bd 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 2fe2a83..67c19ee 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
index e58820c..0d1d226 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 87925b9..ee5b960 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index b28feb6..7ac6dd1 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  Released under both BSD license and Lesser GPL library license.
index 556512e..84f1af5 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index db1344e..a095e58 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 356e530..951f4ef 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
-* @version   v5.20.3  01-Jan-2016
+* @version   v5.20.7  20-Sep-2016
 * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 * Released under both BSD license and Lesser GPL library license.
index 3668dee..e1cf814 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim. All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 2839441..bfebe48 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
    Released under both BSD license and Lesser GPL library license.
index b68cbf4..d710d4a 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 5d6b02b..64726b0 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
@@ -1074,7 +1074,7 @@ class ADORecordset_mssqlnative extends ADORecordSet {
                is running. All associated result memory for the specified result identifier will automatically be freed.       */
        function _close()
        {
-               if($this->_queryID) {
+               if(is_object($this->_queryID)) {
                        $rez = sqlsrv_free_stmt($this->_queryID);
                        $this->_queryID = false;
                        return $rez;
index d733244..e99f31e 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
-* @version   v5.20.3  01-Jan-2016
+* @version   v5.20.7  20-Sep-2016
 * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 * Released under both BSD license and Lesser GPL library license.
index d57d11a..1dc0dcb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index a3b9ea8..3df1b10 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
@@ -118,7 +118,8 @@ class ADODB_mysqli extends ADOConnection {
                                        $argUsername,
                                        $argPassword,
                                        $argDatabasename,
-                                       $this->port,
+                                       # PHP7 compat: port must be int. Use default port if cast yields zero
+                                       (int)$this->port != 0 ? (int)$this->port : 3306,
                                        $this->socket,
                                        $this->clientFlags);
 
@@ -1053,13 +1054,13 @@ class ADORecordSet_mysqli extends ADORecordSet{
                //if results are attached to this pointer from Stored Proceedure calls, the next standard query will die 2014
                //only a problem with persistant connections
 
-               if($this->connection->_connectionID) {
+               if(isset($this->connection->_connectionID) && $this->connection->_connectionID) {
                        while(mysqli_more_results($this->connection->_connectionID)){
                                mysqli_next_result($this->connection->_connectionID);
                        }
                }
 
-               if($this->_queryID) {
+               if($this->_queryID instanceof mysqli_result) {
                        mysqli_free_result($this->_queryID);
                }
                $this->_queryID = false;
index fe7ef11..fe0213b 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index e0c55b7..efc9333 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 79123f1..c0f476a 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
index 2b84b71..33d19a8 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /*
 
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim. All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
index 06e9f32..e2979f5 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 15e89fb..0013467 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim. All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 441af92..341e2fc 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim. All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 60dcb26..b6b0556 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 8337707..ca2b63c 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index ce4f166..b14618c 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
diff --git a/lib/adodb/drivers/adodb-odbc_mssql2012.inc.php b/lib/adodb/drivers/adodb-odbc_mssql2012.inc.php
new file mode 100644 (file)
index 0000000..a3b7f69
--- /dev/null
@@ -0,0 +1,28 @@
+<?php
+/*
+ @version   v5.21.0-dev  ??-???-2016
+ @copyright (c) 2015      Damien Regad, Mark Newnham and the ADOdb community
+  Released under both BSD license and Lesser GPL library license.
+  Whenever there is any discrepancy between the two licenses,
+  the BSD license will take precedence.
+  Set tabs to 4.
+
+  Microsoft SQL Server 2012 via ODBC
+*/
+
+if (!defined('ADODB_DIR')) 
+       die();
+
+include_once(ADODB_DIR."/drivers/adodb-odbc_mssql.inc.php");
+
+class  ADODB_odbc_mssql2012 extends ADODB_odbc_mssql
+{
+       /*
+       * Makes behavior similar to prior versions of SQL Server
+       */
+       var $connectStmt = 'SET CONCAT_NULL_YIELDS_NULL ON';
+}
+
+class  ADORecordSet_odbc_mssql2012 extends ADORecordSet_odbc_mssql
+{
+}
\ No newline at end of file
index 3f66078..42dc1b2 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 18bf8cd..740e9bf 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index ae091a5..9ddd408 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-       @version   v5.20.3  01-Jan-2016
+       @version   v5.20.7  20-Sep-2016
        @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
        @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 8452d33..f5dae53 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index ccc0a7e..179268b 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
-       @version   v5.20.3  01-Jan-2016
+       @version   v5.20.7  20-Sep-2016
        @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
        @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 
@@ -196,6 +196,7 @@ class ADODB_pdo extends ADOConnection {
 
                        $this->_driver->_connectionID = $this->_connectionID;
                        $this->_UpdatePDO();
+                       $this->_driver->database = $this->database;
                        return true;
                }
                $this->_driver = new ADODB_pdo_base();
@@ -266,6 +267,16 @@ class ADODB_pdo extends ADOConnection {
                return $this->_driver->OffsetDate($dayFraction,$date);
        }
 
+       function SelectDB($dbName)
+       {
+               return $this->_driver->SelectDB($dbName);
+       }
+
+       function SQLDate($fmt, $col=false)
+       {
+               return $this->_driver->SQLDate($fmt, $col);
+       }
+
        function ErrorMsg()
        {
                if ($this->_errormsg !== false) {
@@ -507,6 +518,30 @@ class ADODB_pdo extends ADOConnection {
        {
                return ($this->_connectionID) ? $this->_connectionID->lastInsertId() : 0;
        }
+
+       /**
+        * Quotes a string to be sent to the database.
+        * If we have an active connection, delegates quoting to the underlying
+        * PDO object. Otherwise, replace "'" by the value of $replaceQuote (same
+        * behavior as mysqli driver)
+        * @param string  $s            The string to quote
+        * @param boolean $magic_quotes If false, use PDO::quote().
+        * @return string Quoted string
+        */
+       function qstr($s, $magic_quotes = false)
+       {
+               if (!$magic_quotes) {
+                       if ($this->_connectionID) {
+                               return $this->_connectionID->quote($s);
+                       }
+                       return "'" . str_replace("'", $this->replaceQuote, $s) . "'";
+               }
+
+               // undo magic quotes for "
+               $s = str_replace('\\"', '"', $s);
+               return "'$s'";
+       }
+
 }
 
 class ADODB_pdo_base extends ADODB_pdo {
@@ -699,12 +734,22 @@ class ADORecordSet_pdo extends ADORecordSet {
                }
                //adodb_pr($arr);
                $o->name = $arr['name'];
-               if (isset($arr['native_type']) && $arr['native_type'] <> "null") {
-                       $o->type = $arr['native_type'];
-               }
-               else {
-                       $o->type = adodb_pdo_type($arr['pdo_type']);
-               }
+               if (isset($arr['sqlsrv:decl_type']) && $arr['sqlsrv:decl_type'] <> "null") 
+               {
+                   /*
+                   * If the database is SQL server, use the native built-ins
+                   */
+                   $o->type = $arr['sqlsrv:decl_type'];
+               }
+               elseif (isset($arr['native_type']) && $arr['native_type'] <> "null") 
+               {
+                   $o->type = $arr['native_type'];
+               }
+               else 
+               {
+                    $o->type = adodb_pdo_type($arr['pdo_type']);
+               }
+               
                $o->max_length = $arr['len'];
                $o->precision = $arr['precision'];
 
index 94b6850..2c46842 100644 (file)
@@ -2,7 +2,7 @@
 
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index fb35357..746161d 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
@@ -70,7 +70,9 @@ class ADODB_pdo_mysql extends ADODB_pdo {
        {
                $save = $this->metaTablesSQL;
                if ($showSchema && is_string($showSchema)) {
-                       $this->metaTablesSQL .= " from $showSchema";
+                       $this->metaTablesSQL .= $this->qstr($showSchema);
+               } else {
+                       $this->metaTablesSQL .= 'schema()';
                }
 
                if ($mask) {
index 394c5fd..d900627 100644 (file)
@@ -2,7 +2,7 @@
 
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index e2b75a7..059f495 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 6bf4cb1..a06bc04 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 0fb2542..cc5698d 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 54bb4cb..22fdbf4 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 0b8fdd3..851e0af 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 3bf7609..386e65c 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index c445b5b..9fda8bd 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- @version   v5.20.3  01-Jan-2016
+ @version   v5.20.7  20-Sep-2016
  @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 316b4d9..f7aac07 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 388f095..f3f94e3 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index e4c4760..23625b0 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013  John Lim (jlim#natsoft.com).  All rights
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
 reserved.
index 728c2e6..9782e49 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 33b7820..ab00feb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index e659dd6..e2b0b93 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 9aeb0cf..933f2f2 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim. All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 7efd60a..03add79 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index bb84550..0b0e8d9 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index e0865c3..b0bdceb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 2234ba5..072b274 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 092209c..4227b1c 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 9da3fab..e4ca57b 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index f961246..7a0bf06 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 06181b2..eb120c2 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index a362d75..1eaf322 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /*
-@version   v5.20.3  01-Jan-2016
+@version   v5.20.7  20-Sep-2016
 @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
 @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.
index 8debf4f..3a554ad 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index d309c06..3343983 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index 246a65d..5cbfb94 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 
 /**
- * @version   v5.20.3  01-Jan-2016
+ * @version   v5.20.7  20-Sep-2016
  * @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
  * @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
  * Released under both BSD license and Lesser GPL library license.
index c51de3b..e859907 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
-  @version   v5.20.3  01-Jan-2016
+  @version   v5.20.7  20-Sep-2016
   @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved.
   @copyright (c) 2014      Damien Regad, Mark Newnham and the ADOdb community
   Released under both BSD license and Lesser GPL library license.