Fix sync error after resetting read-only group

If an item needed to be erased, it would fail with "Cannot edit item in
read-only library", because the deletion didn't skip the edit check.
This commit is contained in:
Dan Stillman 2017-12-02 01:35:23 -05:00
parent 640846961a
commit cdaf73b3d0
2 changed files with 11 additions and 1 deletions

View file

@ -277,7 +277,13 @@ Zotero.Sync.Data.Local = {
}
}
if (toDelete.length) {
yield objectsClass.erase(toDelete, { skipDeleteLog: true });
yield objectsClass.erase(
toDelete,
{
skipEditCheck: true,
skipDeleteLog: true
}
);
}
// Deleted objects

View file

@ -281,6 +281,10 @@ describe("Zotero.Sync.Data.Local", function() {
var deletedItemKey = deletedItem.key;
yield deletedItem.eraseTx();
// Make group read-only
group.editable = false;
yield group.saveTx();
yield Zotero.Sync.Data.Local.resetUnsyncedLibraryData(libraryID);
assert.isNull(Zotero.SyncedSettings.get(group.libraryID, "testSetting"));