Skip to content

Commit afdf751

Browse files
committed
fix build with old system libsqlite (sqlite3_close_v2 may be missing)
1 parent 5e5895a commit afdf751

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

ext/pdo_sqlite/config.m4

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,9 @@ if test "$PHP_PDO_SQLITE" != "no"; then
6868
PHP_CHECK_LIBRARY(sqlite3,sqlite3_key,[
6969
AC_DEFINE(HAVE_SQLITE3_KEY,1, [have commercial sqlite3 with crypto support])
7070
])
71+
PHP_CHECK_LIBRARY(sqlite3,sqlite3_close_v2,[
72+
AC_DEFINE(HAVE_SQLITE3_CLOSE_V2, 1, [have sqlite3_close_v2])
73+
])
7174

7275
PHP_SUBST(PDO_SQLITE_SHARED_LIBADD)
7376
PHP_NEW_EXTENSION(pdo_sqlite, $php_pdo_sqlite_sources_core, $ext_shared,,-I$pdo_cv_inc_path)
@@ -79,6 +82,7 @@ if test "$PHP_PDO_SQLITE" != "no"; then
7982
threadsafe_flags="-DSQLITE_THREADSAFE=0"
8083
fi
8184

85+
AC_DEFINE(HAVE_SQLITE3_CLOSE_V2, 1, [have sqlite3_close_v2])
8286
other_flags="-DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_FTS5=1 -DSQLITE_CORE=1 -DSQLITE_ENABLE_COLUMN_METADATA=1"
8387

8488
dnl As long as intl is not shared we can have ICU support

ext/pdo_sqlite/sqlite_driver.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,11 @@ static int sqlite_handle_closer(pdo_dbh_t *dbh) /* {{{ */
161161

162162
pdo_sqlite_cleanup_callbacks(H);
163163
if (H->db) {
164+
#ifdef HAVE_SQLITE3_CLOSE_V2
164165
sqlite3_close_v2(H->db);
166+
#else
167+
sqlite3_close(H->db);
168+
#endif
165169
H->db = NULL;
166170
}
167171
if (einfo->errmsg) {

0 commit comments

Comments
 (0)