Bug 151640

Summary: Modern IDB: Support keyPath injection into object store records
Product: WebKit Reporter: Brady Eidson <beidson>
Component: WebCore Misc.Assignee: Brady Eidson <beidson>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, alecflett, commit-queue, jsbell
Priority: P2    
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 149117, 150882    
Attachments:
Description Flags
Patch v1 aestes: review+, aestes: commit-queue-

Description Brady Eidson 2015-11-27 22:17:15 PST
Modern IDB: Support keyPath injection into object store records
Comment 1 Brady Eidson 2015-11-29 10:22:28 PST
Created attachment 266225 [details]
Patch v1
Comment 2 Andy Estes 2015-11-30 09:32:47 PST
Comment on attachment 266225 [details]
Patch v1

View in context: https://bugs.webkit.org/attachment.cgi?id=266225&action=review

> Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp:488
> +    static NeverDestroyed<RefPtr<VM>> vm = VM::create();

Anders once asked me to not use NeverDestroyed for heap-allocated objects. You can just use a static VM* and leak the reference.

> Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp:495
> +    static NeverDestroyed<Strong<JSGlobalObject>> globalObject;

LazyNeverDestroyed?

> Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp:568
> +        RefPtr<SerializedScriptValue> serializedValue = SerializedScriptValue::create(&databaseThreadExecState(), value, nullptr, nullptr);

You can use auto here.
Comment 3 Brady Eidson 2015-11-30 10:16:38 PST
https://trac.webkit.org/changeset/192798