-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 02/22/2011 02:39 PM, Robert Hairgrove wrote: > On Tue, 2011-02-22 at 08:46 -0800, Roger Binns wrote: >> What you think you are seeing is not happening. The documentation is >> correct. > > OK ... but what about that which the GDB debugger is seeing?
There are two possibilities: 1 - The SQLite code deliberately (against documented behaviour) goes around copying VFS structures, and sneaks in behind the scenes to zero out some members all the while craftily hiding how this is done so that searching the source code won't find it. It also hides the previous values so that extension loading still works. 2 - When layers of third party code are compiled, linked, some static, some dynamic, and combined in a process, you and/or gdb get confused. For Linux the only way the default VFS ends up with zero for the dl functions is if it is compiled with SQLITE_OMIT_LOAD_EXTENSION (which incidentally has often been the default for many maintainers). Other things I have seen are multiple copies of SQLite getting loaded into the same process. This is especially an issue on Mac where CoreData picks up the system copy. The copies all coexist but will confuse you. I have been caught out by shared library unloading and then reloading. Because Linux uses ASLR the reload happens at a different address but any registrations made during the first load point to the wrong addresses. Roger -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1khwwACgkQmOOfHg372QRvkACgvIRRBiQV3k9suHC38EhYEKQ8 UmsAnRmXUyam/B2FfiTiS3/cEGyLv/rH =1gl3 -----END PGP SIGNATURE----- _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users