diff options
-rw-r--r-- | phpBB/docs/CHANGELOG.html | 1 | ||||
-rw-r--r-- | phpBB/includes/db/dbal.php | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index a8211ae925..e7013e9bae 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -103,6 +103,7 @@ <li>[Fix] Stricter checks on smilie packs (Bug #19675)</li> <li>[Fix] Gracefully return from cancelling pm drafts (Bug #19675)</li> <li>[Fix] Possible login problems with IE7 if browser check is activated (Bug #20135)</li> + <li>[Fix] Fix possible database transaction errors if code returns on error and rollback happened (Bug #17025)</li> </ul> <a name="v30rc8"></a><h3>1.i. Changes since 3.0.RC8</h3> diff --git a/phpBB/includes/db/dbal.php b/phpBB/includes/db/dbal.php index e37ccda0db..4964ac87f7 100644 --- a/phpBB/includes/db/dbal.php +++ b/phpBB/includes/db/dbal.php @@ -262,6 +262,13 @@ class dbal return true; } + // Check if there is a transaction (no transaction can happen if there was an error, with a combined rollback and error returning enabled) + // This implies we have transaction always set for autocommit db's + if (!$this->transaction) + { + return false; + } + $result = $this->_sql_transaction('commit'); if (!$result) |