This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
What should happen in the following case: db.transaction(["foo"]).objectStore("foo").openCursor().onsuccess = function(e) { var cursor = e.result; if (!cursor) return; cursor.delete(); cursor.update({ id: 1234, value: "Benny" }); } This situation can of course arrive in more subtle ways: os = db.transaction(["foo"]).objectStore("foo"); os.openCursor().onsuccess = function(e) { var cursor = e.result; if (!cursor) return; cursor.update({ id: 1234, value: "Benny" }); } os.delete(1234); As specified, IDBCursor.update behaves just like IDBObjectStore.put and just creates a new entry, but this might be somewhat unexpected behavior.
Based on the resulting thread, it seems the answer is no. So we should probably take out the issues in the spec related to this.
The answer is "yes". Checked in a clarification to that effect.