Mon Jun 18 04:20:41 BST 2012 Colin Watson <email address hidden>
Avoid fatal errors when opening a 64-bit GDBM database from a 32-bit
process (Ubuntu bug #1001189).
* libdb/db_gdbm.c (trap_error): New function. (man_gdbm_open_wrapper): Rearrange interface to call gdbm_open
rather than taking its return value as an argument. Fetch a test
value from the database after opening it, inside a setjmp/longjmp
guard to prevent GDBM from exiting.
* include/mydbm.h (man_gdbm_open_wrapper): Update prototype. (MYDBM_CTRWOPEN, MYDBM_CRWOPEN, MYDBM_RWOPEN, MYDBM_RDOPEN):
Update man_gdbm_open_wrapper calls, since it now calls gdbm_open
itself.
* NEWS: Document this.
It sounds like it might not be a bad idea to backport this to 12.04 as well, once this has landed in 12.10.
Mon Jun 18 04:20:41 BST 2012 Colin Watson <email address hidden>
Avoid fatal errors when opening a 64-bit GDBM database from a 32-bit
process (Ubuntu bug #1001189).
* libdb/db_gdbm.c (trap_error): New function.
(man_ gdbm_open_ wrapper) : Rearrange interface to call gdbm_open open_wrapper) : Update prototype.
(MYDBM_ CTRWOPEN, MYDBM_CRWOPEN, MYDBM_RWOPEN, MYDBM_RDOPEN): open_wrapper calls, since it now calls gdbm_open
rather than taking its return value as an argument. Fetch a test
value from the database after opening it, inside a setjmp/longjmp
guard to prevent GDBM from exiting.
* include/mydbm.h (man_gdbm_
Update man_gdbm_
itself.
* NEWS: Document this.
It sounds like it might not be a bad idea to backport this to 12.04 as well, once this has landed in 12.10.