Checkout
dlr
committed
on 22 Nov 07
When a new-enough version of SQLite is detected at 'configure'-time,
employ its thread-safety runtime verification.

* build/ac-macros/sqlit… Show more
When a new-enough version of SQLite is detected at 'configure'-time,

employ its thread-safety runtime verification.

* build/ac-macros/sqlite.m4

 (SVN_LIB_SQLITE, SVN_SQLITE_CONFIG): Test whether

  sqlite3_threadsafe() is available, and if so, set

  $threadsafety_runtime_check_avail to "yes".  In the former macro,

  record that fact by defining the

  SVN_HAVE_SQLITE_THREADSAFE_PREDICATE C preprocessor token.

* subversion/libsvn_fs_util/sqlite-util.c

 Include svn_types.h

 (init_sqlite): Add new function which verifies that SQLite was

  compiled in a thread-safe manner when

  SVN_HAVE_SQLITE_THREADSAFE_PREDICATE is defined.  This could

  potentially also/alternately employ apr_dso_load() to check for

  SQLite DLLs which have changed since compile-time.

 (svn_fs__sqlite_open): Call init_sqlite(), if the library hasn't

  already been initialized.

Reviewed by: glasser

            philip

Show less