From 76145bb52f0cc1c659f08574fede3183ee3135ae Mon Sep 17 00:00:00 2001 From: Mark Newnham Date: Sun, 31 May 2020 18:57:48 -0600 Subject: Retrieve error messages early before connection close #614 Error messages from last error are lost if the connection is closed before retrieval --- drivers/adodb-mssqlnative.inc.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/adodb-mssqlnative.inc.php b/drivers/adodb-mssqlnative.inc.php index 53be16ce..1f48a32f 100644 --- a/drivers/adodb-mssqlnative.inc.php +++ b/drivers/adodb-mssqlnative.inc.php @@ -1080,6 +1080,12 @@ class ADORecordset_mssqlnative extends ADORecordSet { is running. All associated result memory for the specified result identifier will automatically be freed. */ function _close() { + /* + * If we are closing down a failed query, collect any + * error messages. This is a hack fix to the "close too early" + * problem so this might go away later + */ + $this->connection->errorMsg(); if(is_resource($this->_queryID)) { $rez = sqlsrv_free_stmt($this->_queryID); $this->_queryID = false; -- cgit v1.3 From 5d4fbb20f5127298cae61b65a85b1ad653ee91be Mon Sep 17 00:00:00 2001 From: Mark Newnham Date: Sun, 28 Jun 2020 11:43:45 -0600 Subject: Update Changelog --- docs/changelog.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/changelog.md b/docs/changelog.md index b5395012..f5880ebb 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -5,6 +5,9 @@ Older changelogs: [v3.x](changelog_v3.x.md), [v2.x](changelog_v2.x.md). +## 5.20.18 - 28-Jun-2020 +- mssql: Retrieve error messages early before connection closed. #614 + ## 5.20.17 - 31-Mar-2020 - core: fix PHP notice in ADOdb_Exception constructor when using transactions. #601 -- cgit v1.3 From 0363eca78eed8bd02d1456072c729da302655241 Mon Sep 17 00:00:00 2001 From: Mark Newnham Date: Sun, 28 Jun 2020 11:52:20 -0600 Subject: Bump Version --- adodb-active-record.inc.php | 2 +- adodb-active-recordx.inc.php | 2 +- adodb-csvlib.inc.php | 2 +- adodb-datadict.inc.php | 2 +- adodb-error.inc.php | 2 +- adodb-errorhandler.inc.php | 2 +- adodb-errorpear.inc.php | 2 +- adodb-exceptions.inc.php | 2 +- adodb-iterator.inc.php | 2 +- adodb-lib.inc.php | 2 +- adodb-memcache.lib.inc.php | 2 +- adodb-pager.inc.php | 2 +- adodb-pear.inc.php | 2 +- adodb-perf.inc.php | 2 +- adodb-php4.inc.php | 2 +- adodb-time.inc.php | 2 +- adodb.inc.php | 2 +- datadict/datadict-access.inc.php | 2 +- datadict/datadict-db2.inc.php | 2 +- datadict/datadict-firebird.inc.php | 2 +- datadict/datadict-generic.inc.php | 2 +- datadict/datadict-ibase.inc.php | 2 +- datadict/datadict-informix.inc.php | 2 +- datadict/datadict-mssql.inc.php | 2 +- datadict/datadict-mssqlnative.inc.php | 2 +- datadict/datadict-mysql.inc.php | 2 +- datadict/datadict-oci8.inc.php | 2 +- datadict/datadict-postgres.inc.php | 2 +- datadict/datadict-sapdb.inc.php | 2 +- datadict/datadict-sqlite.inc.php | 2 +- datadict/datadict-sybase.inc.php | 2 +- drivers/adodb-access.inc.php | 2 +- drivers/adodb-ado.inc.php | 2 +- drivers/adodb-ado5.inc.php | 2 +- drivers/adodb-ado_access.inc.php | 2 +- drivers/adodb-ado_mssql.inc.php | 2 +- drivers/adodb-borland_ibase.inc.php | 2 +- drivers/adodb-csv.inc.php | 2 +- drivers/adodb-db2.inc.php | 2 +- drivers/adodb-db2oci.inc.php | 2 +- drivers/adodb-db2ora.inc.php | 2 +- drivers/adodb-fbsql.inc.php | 2 +- drivers/adodb-firebird.inc.php | 2 +- drivers/adodb-ibase.inc.php | 2 +- drivers/adodb-informix.inc.php | 2 +- drivers/adodb-informix72.inc.php | 2 +- drivers/adodb-ldap.inc.php | 2 +- drivers/adodb-mssql.inc.php | 2 +- drivers/adodb-mssqlnative.inc.php | 2 +- drivers/adodb-mssqlpo.inc.php | 2 +- drivers/adodb-mysql.inc.php | 2 +- drivers/adodb-mysqli.inc.php | 2 +- drivers/adodb-mysqlpo.inc.php | 2 +- drivers/adodb-mysqlt.inc.php | 2 +- drivers/adodb-netezza.inc.php | 2 +- drivers/adodb-oci8.inc.php | 2 +- drivers/adodb-oci805.inc.php | 2 +- drivers/adodb-oci8po.inc.php | 2 +- drivers/adodb-oci8quercus.inc.php | 2 +- drivers/adodb-odbc.inc.php | 2 +- drivers/adodb-odbc_db2.inc.php | 2 +- drivers/adodb-odbc_mssql.inc.php | 2 +- drivers/adodb-odbc_oracle.inc.php | 2 +- drivers/adodb-odbtp.inc.php | 2 +- drivers/adodb-odbtp_unicode.inc.php | 2 +- drivers/adodb-oracle.inc.php | 2 +- drivers/adodb-pdo.inc.php | 2 +- drivers/adodb-pdo_mssql.inc.php | 2 +- drivers/adodb-pdo_mysql.inc.php | 2 +- drivers/adodb-pdo_oci.inc.php | 2 +- drivers/adodb-pdo_pgsql.inc.php | 2 +- drivers/adodb-pdo_sqlite.inc.php | 2 +- drivers/adodb-postgres.inc.php | 2 +- drivers/adodb-postgres64.inc.php | 2 +- drivers/adodb-postgres7.inc.php | 2 +- drivers/adodb-postgres8.inc.php | 2 +- drivers/adodb-postgres9.inc.php | 2 +- drivers/adodb-proxy.inc.php | 2 +- drivers/adodb-sapdb.inc.php | 2 +- drivers/adodb-sqlanywhere.inc.php | 2 +- drivers/adodb-sqlite.inc.php | 2 +- drivers/adodb-sqlite3.inc.php | 2 +- drivers/adodb-sqlitepo.inc.php | 2 +- drivers/adodb-sybase.inc.php | 2 +- drivers/adodb-sybase_ase.inc.php | 2 +- drivers/adodb-text.inc.php | 2 +- drivers/adodb-vfp.inc.php | 2 +- pear/Auth/Container/ADOdb.php | 2 +- perf/perf-db2.inc.php | 2 +- perf/perf-informix.inc.php | 2 +- perf/perf-mssql.inc.php | 2 +- perf/perf-mssqlnative.inc.php | 2 +- perf/perf-mysql.inc.php | 2 +- perf/perf-oci8.inc.php | 2 +- perf/perf-postgres.inc.php | 2 +- pivottable.inc.php | 2 +- rsfilter.inc.php | 2 +- server.php | 2 +- session/adodb-compress-bzip2.php | 2 +- session/adodb-compress-gzip.php | 2 +- session/adodb-cryptsession.php | 2 +- session/adodb-cryptsession2.php | 2 +- session/adodb-encrypt-mcrypt.php | 2 +- session/adodb-encrypt-md5.php | 2 +- session/adodb-encrypt-secret.php | 2 +- session/adodb-session-clob.php | 2 +- session/adodb-session-clob2.php | 2 +- session/adodb-session.php | 2 +- session/adodb-session2.php | 2 +- session/old/adodb-cryptsession.php | 2 +- session/old/adodb-session-clob.php | 2 +- session/old/adodb-session.php | 2 +- tests/benchmark.php | 2 +- tests/client.php | 2 +- tests/test-datadict.php | 2 +- tests/test-php5.php | 2 +- tests/test.php | 2 +- tests/test3.php | 2 +- tests/test4.php | 2 +- tests/test5.php | 2 +- tests/testcache.php | 2 +- tests/testdatabases.inc.php | 2 +- tests/testmssql.php | 2 +- tests/testoci8.php | 2 +- tests/testoci8cursor.php | 2 +- tests/testpaging.php | 2 +- tests/testpear.php | 2 +- tests/testsessions.php | 2 +- toexport.inc.php | 2 +- tohtml.inc.php | 2 +- 130 files changed, 130 insertions(+), 130 deletions(-) diff --git a/adodb-active-record.inc.php b/adodb-active-record.inc.php index 9f115709..81d548a6 100644 --- a/adodb-active-record.inc.php +++ b/adodb-active-record.inc.php @@ -1,7 +1,7 @@ Date: Sun, 2 Aug 2020 11:53:38 +0200 Subject: Whitespace --- docs/changelog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/changelog.md b/docs/changelog.md index f5880ebb..dbcdee99 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -6,6 +6,7 @@ Older changelogs: [v2.x](changelog_v2.x.md). ## 5.20.18 - 28-Jun-2020 + - mssql: Retrieve error messages early before connection closed. #614 ## 5.20.17 - 31-Mar-2020 -- cgit v1.3 From 013e5e7159d7d56d9c6fa56928fe4ec403e75d32 Mon Sep 17 00:00:00 2001 From: Damien Regad Date: Sun, 2 Aug 2020 11:56:00 +0200 Subject: Reset version to avoid merge conflicts --- adodb-active-record.inc.php | 2 +- adodb-active-recordx.inc.php | 2 +- adodb-csvlib.inc.php | 2 +- adodb-datadict.inc.php | 2 +- adodb-error.inc.php | 2 +- adodb-errorhandler.inc.php | 2 +- adodb-errorpear.inc.php | 2 +- adodb-exceptions.inc.php | 2 +- adodb-iterator.inc.php | 2 +- adodb-lib.inc.php | 2 +- adodb-memcache.lib.inc.php | 2 +- adodb-pager.inc.php | 2 +- adodb-pear.inc.php | 2 +- adodb-perf.inc.php | 2 +- adodb-php4.inc.php | 2 +- adodb-time.inc.php | 2 +- adodb.inc.php | 4 ++-- datadict/datadict-access.inc.php | 2 +- datadict/datadict-db2.inc.php | 2 +- datadict/datadict-firebird.inc.php | 2 +- datadict/datadict-generic.inc.php | 2 +- datadict/datadict-ibase.inc.php | 2 +- datadict/datadict-informix.inc.php | 2 +- datadict/datadict-mssql.inc.php | 2 +- datadict/datadict-mssqlnative.inc.php | 2 +- datadict/datadict-mysql.inc.php | 2 +- datadict/datadict-oci8.inc.php | 2 +- datadict/datadict-postgres.inc.php | 2 +- datadict/datadict-sapdb.inc.php | 2 +- datadict/datadict-sqlite.inc.php | 2 +- datadict/datadict-sybase.inc.php | 2 +- docs/changelog.md | 2 ++ drivers/adodb-access.inc.php | 2 +- drivers/adodb-ado.inc.php | 2 +- drivers/adodb-ado5.inc.php | 2 +- drivers/adodb-ado_access.inc.php | 2 +- drivers/adodb-ado_mssql.inc.php | 2 +- drivers/adodb-borland_ibase.inc.php | 2 +- drivers/adodb-csv.inc.php | 2 +- drivers/adodb-db2.inc.php | 2 +- drivers/adodb-db2oci.inc.php | 2 +- drivers/adodb-db2ora.inc.php | 2 +- drivers/adodb-fbsql.inc.php | 2 +- drivers/adodb-firebird.inc.php | 2 +- drivers/adodb-ibase.inc.php | 2 +- drivers/adodb-informix.inc.php | 2 +- drivers/adodb-informix72.inc.php | 2 +- drivers/adodb-ldap.inc.php | 2 +- drivers/adodb-mssql.inc.php | 2 +- drivers/adodb-mssqlnative.inc.php | 2 +- drivers/adodb-mssqlpo.inc.php | 2 +- drivers/adodb-mysql.inc.php | 2 +- drivers/adodb-mysqli.inc.php | 2 +- drivers/adodb-mysqlpo.inc.php | 2 +- drivers/adodb-mysqlt.inc.php | 2 +- drivers/adodb-netezza.inc.php | 2 +- drivers/adodb-oci8.inc.php | 2 +- drivers/adodb-oci805.inc.php | 2 +- drivers/adodb-oci8po.inc.php | 2 +- drivers/adodb-oci8quercus.inc.php | 2 +- drivers/adodb-odbc.inc.php | 2 +- drivers/adodb-odbc_db2.inc.php | 2 +- drivers/adodb-odbc_mssql.inc.php | 2 +- drivers/adodb-odbc_oracle.inc.php | 2 +- drivers/adodb-odbtp.inc.php | 2 +- drivers/adodb-odbtp_unicode.inc.php | 2 +- drivers/adodb-oracle.inc.php | 2 +- drivers/adodb-pdo.inc.php | 2 +- drivers/adodb-pdo_mssql.inc.php | 2 +- drivers/adodb-pdo_mysql.inc.php | 2 +- drivers/adodb-pdo_oci.inc.php | 2 +- drivers/adodb-pdo_pgsql.inc.php | 2 +- drivers/adodb-pdo_sqlite.inc.php | 2 +- drivers/adodb-postgres.inc.php | 2 +- drivers/adodb-postgres64.inc.php | 2 +- drivers/adodb-postgres7.inc.php | 2 +- drivers/adodb-postgres8.inc.php | 2 +- drivers/adodb-postgres9.inc.php | 2 +- drivers/adodb-proxy.inc.php | 2 +- drivers/adodb-sapdb.inc.php | 2 +- drivers/adodb-sqlanywhere.inc.php | 2 +- drivers/adodb-sqlite.inc.php | 2 +- drivers/adodb-sqlite3.inc.php | 2 +- drivers/adodb-sqlitepo.inc.php | 2 +- drivers/adodb-sybase.inc.php | 2 +- drivers/adodb-sybase_ase.inc.php | 2 +- drivers/adodb-text.inc.php | 2 +- drivers/adodb-vfp.inc.php | 2 +- pear/Auth/Container/ADOdb.php | 2 +- perf/perf-db2.inc.php | 2 +- perf/perf-informix.inc.php | 2 +- perf/perf-mssql.inc.php | 2 +- perf/perf-mssqlnative.inc.php | 2 +- perf/perf-mysql.inc.php | 2 +- perf/perf-oci8.inc.php | 2 +- perf/perf-postgres.inc.php | 2 +- pivottable.inc.php | 2 +- rsfilter.inc.php | 2 +- server.php | 2 +- session/adodb-compress-bzip2.php | 2 +- session/adodb-compress-gzip.php | 2 +- session/adodb-cryptsession.php | 2 +- session/adodb-cryptsession2.php | 2 +- session/adodb-encrypt-mcrypt.php | 2 +- session/adodb-encrypt-md5.php | 2 +- session/adodb-encrypt-secret.php | 2 +- session/adodb-session-clob.php | 2 +- session/adodb-session-clob2.php | 2 +- session/adodb-session.php | 2 +- session/adodb-session2.php | 2 +- session/old/adodb-cryptsession.php | 2 +- session/old/adodb-session-clob.php | 2 +- session/old/adodb-session.php | 2 +- tests/benchmark.php | 2 +- tests/client.php | 2 +- tests/test-datadict.php | 2 +- tests/test-php5.php | 2 +- tests/test.php | 2 +- tests/test3.php | 2 +- tests/test4.php | 2 +- tests/test5.php | 2 +- tests/testcache.php | 2 +- tests/testdatabases.inc.php | 2 +- tests/testmssql.php | 2 +- tests/testoci8.php | 2 +- tests/testoci8cursor.php | 2 +- tests/testpaging.php | 2 +- tests/testpear.php | 2 +- tests/testsessions.php | 2 +- toexport.inc.php | 2 +- tohtml.inc.php | 2 +- 131 files changed, 133 insertions(+), 131 deletions(-) diff --git a/adodb-active-record.inc.php b/adodb-active-record.inc.php index 81d548a6..4caae158 100644 --- a/adodb-active-record.inc.php +++ b/adodb-active-record.inc.php @@ -1,7 +1,7 @@ RecordCount() is used. diff --git a/datadict/datadict-access.inc.php b/datadict/datadict-access.inc.php index 499f59dc..8fbc6fe4 100644 --- a/datadict/datadict-access.inc.php +++ b/datadict/datadict-access.inc.php @@ -1,7 +1,7 @@