Fix holding write lock while calling notify in legacy API

This commit is contained in:
Kovid Goyal 2013-08-04 23:48:52 +05:30
parent ca0ee594f9
commit d03bfd7f3d

View File

@ -436,7 +436,7 @@ class LibraryDatabase(object):
if typ: if typ:
identifiers[typ] = val identifiers[typ] = val
self.new_api._set_field('identifiers', {book_id:identifiers}) self.new_api._set_field('identifiers', {book_id:identifiers})
self.notify('metadata', [book_id]) self.notify('metadata', [book_id])
def set_isbn(self, book_id, isbn, notify=True, commit=True): def set_isbn(self, book_id, isbn, notify=True, commit=True):
self.set_identifier(book_id, 'isbn', isbn, notify=notify, commit=commit) self.set_identifier(book_id, 'isbn', isbn, notify=notify, commit=commit)
@ -449,9 +449,9 @@ class LibraryDatabase(object):
existing = {icu_lower(x) for x in otags} existing = {icu_lower(x) for x in otags}
tags = list(otags) + [x for x in tags if icu_lower(x) not in existing] tags = list(otags) + [x for x in tags if icu_lower(x) not in existing]
ret = self.new_api._set_field('tags', {book_id:tags}, allow_case_change=allow_case_change) ret = self.new_api._set_field('tags', {book_id:tags}, allow_case_change=allow_case_change)
if notify: if notify:
self.notify('metadata', [book_id]) self.notify('metadata', [book_id])
return ret return ret
def set_metadata(self, book_id, mi, ignore_errors=False, set_title=True, def set_metadata(self, book_id, mi, ignore_errors=False, set_title=True,
set_authors=True, commit=True, force_changes=False, notify=True): set_authors=True, commit=True, force_changes=False, notify=True):