mirror of
https://github.com/owntone/owntone-server.git
synced 2025-03-30 17:23:44 -04:00
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:
parent
537233256b
commit
78ba4d7f20
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user