[sqlite-dev] SQLite packaging, again

Roger Binns rogerb at rogerbinns.com
Fri Dec 16 00:13:56 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 15/12/11 15:52, Jaroslaw Staniek wrote:
> sqlite3_api is uninitialized, no reason it should be since I am not 
> using redefined API functions.

It is initialized for dynamically loaded extensions.  See this somewhat
dated page:

  http://www.sqlite.org/cvstrac/wiki?p=LoadableExtensions

An extension doesn't link against SQLite directly.  Instead all calls go
via that indirection table as it ensures the pointer is to the correct
SQLite methods.

It is possible for multiple versions of SQLite to be loaded into the same
process. By using that table of functions it ensures the correct one is
being used.

The header file sqlite3ext.h makes the use of the pointer to methods
transparent.

When the extension is built directly into SQLite then there is no need for
table of function pointers hence the SQLITE_CORE define.

Roger
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iEYEARECAAYFAk7qjUQACgkQmOOfHg372QSMGwCfSd4ynom4KbxnifZ4SzQT0mER
jZsAoKg8U/NVoF51BWSjhaHZ4/jpsbut
=j+y1
-----END PGP SIGNATURE-----


More information about the calligra-devel mailing list