diff options
Diffstat (limited to 'ext/sqlite/sqlite.c')
-rw-r--r-- | ext/sqlite/sqlite.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ext/sqlite/sqlite.c b/ext/sqlite/sqlite.c index 4c979d146a..5e4ebc0ebc 100644 --- a/ext/sqlite/sqlite.c +++ b/ext/sqlite/sqlite.c @@ -1030,6 +1030,9 @@ PHP_FUNCTION(sqlite_popen) &filename, &filename_len, &mode, &errmsg)) { return; } + if (errmsg) { + zval_dtor(errmsg); + } if (strncmp(filename, ":memory:", sizeof(":memory:") - 1)) { /* resolve the fully-qualified path name to use as the hash key */ @@ -1095,6 +1098,9 @@ PHP_FUNCTION(sqlite_open) php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); return; } + if (errmsg) { + zval_dtor(errmsg); + } if (strncmp(filename, ":memory:", sizeof(":memory:") - 1)) { if (PG(safe_mode) && (!php_checkuid(filename, NULL, CHECKUID_CHECK_FILE_AND_DIR))) { @@ -1137,6 +1143,9 @@ PHP_FUNCTION(sqlite_factory) php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); RETURN_NULL(); } + if (errmsg) { + zval_dtor(errmsg); + } if (PG(safe_mode) && (!php_checkuid(filename, NULL, CHECKUID_CHECK_FILE_AND_DIR))) { php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); |