Crash when IndexedDB's getAll is used inside a Web Worker.
authorbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 10 Jun 2017 04:32:19 +0000 (04:32 +0000)
committerbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 10 Jun 2017 04:32:19 +0000 (04:32 +0000)
commit03edbaebe55d5c205fdf72576b35979cba439e07
tree961d3df68865fdb4f1bda8636f66c8ac523cc7a9
parent62b3af004e7623db12ac81eb8de70c27e8f9fd56
Crash when IndexedDB's getAll is used inside a Web Worker.
https://bugs.webkit.org/show_bug.cgi?id=172434

Reviewed by Andy Estes.

Source/WebCore:

Test: storage/indexeddb/modern/worker-getall.html

* Modules/indexeddb/IDBGetAllResult.cpp:
(WebCore::IDBGetAllResult::IDBGetAllResult): Add an isolated-copying constructor.
(WebCore::IDBGetAllResult::isolatedCopy):
* Modules/indexeddb/IDBGetAllResult.h:

* Modules/indexeddb/shared/IDBResultData.cpp:
(WebCore::IDBResultData::isolatedCopy): Actually copy the IDBGetAllResult.

LayoutTests:

* storage/indexeddb/modern/resources/worker-getall.js: Added.
* storage/indexeddb/modern/worker-getall-expected.txt: Added.
* storage/indexeddb/modern/worker-getall.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@218041 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/storage/indexeddb/modern/resources/worker-getall.js [new file with mode: 0644]
LayoutTests/storage/indexeddb/modern/worker-getall-expected.txt [new file with mode: 0644]
LayoutTests/storage/indexeddb/modern/worker-getall.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/Modules/indexeddb/IDBGetAllResult.cpp
Source/WebCore/Modules/indexeddb/IDBGetAllResult.h
Source/WebCore/Modules/indexeddb/shared/IDBResultData.cpp