hold lock during db enum -- reduce memory requirements by serializing updates (partcuarly with rescan_interval), and because the enum isn't currently reentrant

This commit is contained in:
Ron Pedde 2004-09-18 05:24:34 +00:00
parent 537233256b
commit 78ba4d7f20

View File

@ -348,12 +348,9 @@ int db_scanning(void) {
*/ */
int db_version(void) { int db_version(void) {
int version; int version;
int err;
db_readlock(); db_readlock();
version=db_version_no; version=db_version_no;
db_unlock(); db_unlock();
return version; return version;
@ -897,9 +894,6 @@ ENUMHANDLE db_enum_begin(void) {
} }
helper->next = helper->root; helper->next = helper->root;
db_unlock();
return helper; return helper;
} }
@ -1034,6 +1028,7 @@ int db_enum_end(ENUMHANDLE handle) {
free(helper); free(helper);
db_unlock();
return 0; return 0;
} }