| Age | Commit message (Collapse) | Author | Files | Lines |
|
Fixes #646
|
|
|
|
Change web site references from http://adodb.org to https.
|
|
Note on merge conflict in adodb.inc.php:
At line 5133, parse_url() is called with `@` operator in the hotfix/5.20
branch (commit 2026e66e86f35995eee32557c2f83f1d539ca9c7) whereas the
same change in the master branch (commit c1a6794ece2b02c2a5d238159ae85da3cbd6d)
is without it. Code was kept as it is in master.
# Conflicts:
# adodb-lib.inc.php
# adodb.inc.php
# drivers/adodb-mssqlnative.inc.php
# drivers/adodb-mysqli.inc.php
# drivers/adodb-pdo.inc.php
|
|
|
|
Update of $ADODB_vers was missed in the previous bump commit.
|
|
|
|
The # symbol disupts the parse_url function so the password is temorarily substituted during the url decoding phase
|
|
The # symbol disupts the parse_url function so the password is temorarily substituted during the url decoding phase
|
|
|
|
|
|
|
|
# Conflicts:
# docs/changelog.md
|
|
When using transactions (startTrans/completeTrans), the ADOdb Exception
thrower function ($raiseErrorFn property) is replaced by a specific
handler (ADODB_TransMonitor method), which itself calls the original
handler (adodb_throw) by default.
ADODB_TransMonitor incorrectly overwrites the $fn parameter (which
drives the behavior of the ADODB_Exception class constructor) with the
name of the original handler, causing ADOdb_Exception::__construct()
to throw an "Array to string conversion" PHP notice when the query
triggering the exception has parameters.
Using a dedicated variable to store and call the original handler fixes
the problem.
Fixes #601
|
|
Always clone, but left in mysqli check for PHP7
|
|
|
|
If ADODB_FETCH_MODE is ADODB_FETCH_BOTH, and 2 columns were returned,
the first column was returned as both the key and the value.
Fixes #600
|
|
|
|
|
|
Fixes #445
Signed-off-by: Damien Regad <dregad@mantisbt.org>
Rebased, conflicts resolved, fixed whitespace (indent with spaces).
|
|
|
|
This is @laurent-n's original submission from PR #489 with some
whitespace adjustments, rebased to latest master.
Signed-off-by: Damien Regad <dregad@mantisbt.org>
|
|
Microsoft wraps column names in square brackets in T-SQL statements,
which is not really obligatory but becomes necessary when reserved
keywords are used as columns names (e.g. 'BEGIN' or 'CURRENT').
Fixes #246
Signed-off-by: Damien Regad <dregad@mantisbt.org>
Original commits from PR squashed and message reworded.
|
|
|
|
# Conflicts:
# adodb-lib.inc.php
|
|
The new function is the same as getMenu3(), except that it has an extra
parameter $compareFirstCol to align it with getMenu(). The new param
defaults to true, i.e. defaults are compared against the value, not the
description (opposite of getMenu3()).
getMenu3() is marked as deprecated and just calls the new function.
|
|
Coding guidelines / whitespace.
|
|
It has been noted as such in the documentation since 01.01.2019, but
the code had not been updated accordingly.
|
|
Coding guidelines / whitespace.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
srand() should not be called manually, unless one has a better way to
initialise the already-initialised random seed.
The way the current srand() call is made is buggy, and will lead to
duplicate random seeds if called often enough. Because the current call
will lose the timestamp part, and will only use the first 6 chars from
the current microsecond, but the system might not have a high-enough
timer resolution, so the actual pool of random seeds gets even smaller.
Fixes #532
Signed-off-by: Damien Regad <dregad@mantisbt.org>
|
|
When initializing a new connection with postgres or pgsql driver, ADOdb
currently defaults to using the postgres8 driver.
Postgres 8.4 lifecycle ended in 2014, and currently only versions >= 9.4
are supported, so it makes sense to change our default to connect using
the postgres9 driver instead of postgres8, even though they currently
only differ by driver name.
Fixes #474
|
|
|
|
# Conflicts:
# adodb-time.inc.php
# docs/changelog.md
# drivers/adodb-mssql.inc.php
# drivers/adodb-mssqlnative.inc.php
# drivers/adodb-oci8po.inc.php
|
|
|
|
|
|
|
|
|
|
|
|
Commit 53d13c0f64ad97ff87fa3b74fa4a4e896e691c9b (fixing #58 and #63)
introduced a regression in 5.20.0 that broke connections LDAP when using
URIs like ldap:// or ldaps://.
Create a new protected method ADOConnection::parseHostNameAndPort() to
help parse off the port from a hostname while retaining the ldap:// or
ldaps:// scheme, and use it to refactor Connect() and PConnect().
Fixes #340
Signed-off-by: Damien Regad <dregad@mantisbt.org>
The PR's original commits were squashed and the message reworded. The
fix (initially targeted at master) was applied to hotfix/5.20 branch.
|
|
|
|
Conflicts:
adodb.inc.php
docs/changelog.md
|
|
The PHP native `$php_errormsg` variable has been deprecated as of PHP
7.2. The recommended replacement is `error_get_last()`.
A number of the driver classes used `$php_errormsg` to track if a DB
action caused an error.
As the `error_get_last()` function returns an array and comparing the
message therefore is slightly more involved, two new methods have been
introduced into the abstract parent class `ADOConnection` to handle the
message comparison.
The `resetLastError()` method retrieves the initial (old) error message
and resets it to enable checking whether a new error has occurred, even
when the new error is the same as the previous one.
The new `getChangedErrorMsg()` method compares the old error message
with the current one to determine whether a new message has occurred,
and if so, returns the message.
Refs:
* http://php.net/manual/en/migration72.deprecated.php#migration72.deprecated.track_errors-and-php_errormsg
* http://php.net/manual/en/reserved.variables.phperrormsg.php
* http://php.net/manual/en/function.error-get-last.php
Additional notes:
* In the `ADODB_ads::UpdateBlob()` method, the original (old) message
was not being retrieved which could result in an unrelated error being
recorded. This has been fixed.
* In the `ADODB_db2::_connect()` and `ADODB_db2::_pconnect()` methods,
the `$php_errormsg` was being reset, but subsequently not checked for
changes, so as the variable in effect was not being used, I've removed
the related code.
* In the `ADODB_sybase::ErrorMsg()` method, the `$php_errormsg` was
being checked, but no functions which could potential cause errors are
being called. As `$php_errormsg` is only available in the scope an
error occurred in, this meant that `$php_errormsg` would always be
empty, so I've removed the related code.
Fixes #409
|
|
|
|
Cherry-pick + squash of commits
- 5c5ee9e953dd0caf978630b1c3147447d6cb58a7
- c8524bb3fcd291fe6233643fb43e9ceeb8aef925
|