Exceptions thrown in JSDictionary::get() are not cleared, causing subsequent calls to JSDictionary::get() to fail spuriously.
Created attachment 161692 [details]
Comment on attachment 161692 [details]
Attachment 161692 [details] did not pass chromium-ews (chromium-xvfb):
New failing tests:
Created attachment 177295 [details]
Created attachment 177306 [details]
Created attachment 177318 [details]
This change is necessary to implement IndexedDB for JSC.
Without this change, numerous calls to Dictionary::get() and Dictionary::getWithUndefinedOrNullCheck() fail in IDBDatabase::createObjectStore() and IDBObjectStore::createIndex() because earlier accesses to the options dictionary generated exceptions.
With this proposed patch and that in bug 103484, IndexedDB for JSC passes 143 out of 196 layout tests in storage/indexeddb.
Comment on attachment 177318 [details]
I think this problem should be fixed in the IndexedDB layer not in the Dictionary layer. Please see discussion in bug 96614.
*** This bug has been marked as a duplicate of bug 96614 ***