Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Issue 106853005: Implement platform deleters per spec. (Closed)

Created:
7 years ago by sof
Modified:
7 years ago
CC:
blink-reviews, Nils Barth (inactive), kojih, arv+blink, jsbell+bindings_chromium.org, eae+blinkwatch, abarth-chromium, marja+watch_chromium.org, dglazkov+blink, adamk+blink_chromium.org, Nate Chapin, watchdog-blink-watchlist_google.com, Inactive
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Visibility:
Public.

Description

Implement platform deleters per spec. Extend the functionality of platform deleter operations slightly to allow them to implement what WebIDL prescribes, http://heycam.github.io/webidl/#delete That is, if the property name being deleted isn't exposed by the platform object, any native property should be deleted instead. Update the two deleters that this currently applies to, Storage and DOMStringMap (dataset). This change reflects the outcome of a spec clarification issue raised via https://www.w3.org/Bugs/Public/show_bug.cgi?id=24096 R= BUG=329176 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=164081

Patch Set 1 #

Total comments: 6

Patch Set 2 : Switch to DeleteResult enum + extend scheme to indexed deleters #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+84 lines, -42 lines) Patch
M LayoutTests/fast/dom/dataset-expected.txt View 1 chunk +2 lines, -0 lines 0 comments Download
M LayoutTests/fast/dom/script-tests/dataset.js View 1 chunk +15 lines, -0 lines 0 comments Download
M LayoutTests/storage/domstorage/localstorage/delete-removal.html View 1 2 chunks +11 lines, -1 line 0 comments Download
M LayoutTests/storage/domstorage/localstorage/delete-removal-expected.txt View 1 1 chunk +4 lines, -0 lines 0 comments Download
M Source/bindings/scripts/code_generator_v8.pm View 1 2 chunks +7 lines, -5 lines 2 comments Download
M Source/bindings/tests/results/V8TestEventTarget.cpp View 1 2 chunks +6 lines, -4 lines 0 comments Download
M Source/bindings/v8/V8Binding.h View 1 1 chunk +8 lines, -0 lines 0 comments Download
M Source/core/dom/DOMStringMap.h View 1 3 chunks +7 lines, -14 lines 0 comments Download
M Source/core/dom/DOMStringMap.idl View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/dom/DatasetDOMStringMap.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/dom/DatasetDOMStringMap.cpp View 1 chunk +8 lines, -6 lines 0 comments Download
M Source/core/storage/Storage.h View 1 2 chunks +3 lines, -2 lines 0 comments Download
M Source/core/storage/Storage.cpp View 1 1 chunk +10 lines, -7 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
sof
Please take a look when you next have a spare moment.
7 years ago (2013-12-17 13:07:05 UTC) #1
haraken
https://codereview.chromium.org/106853005/diff/1/Source/core/dom/DOMStringMap.h File Source/core/dom/DOMStringMap.h (right): https://codereview.chromium.org/106853005/diff/1/Source/core/dom/DOMStringMap.h#newcode80 Source/core/dom/DOMStringMap.h:80: return true; Don't we want to return |result| ? ...
7 years ago (2013-12-17 15:59:19 UTC) #2
sof
https://codereview.chromium.org/106853005/diff/1/Source/core/dom/DOMStringMap.h File Source/core/dom/DOMStringMap.h (right): https://codereview.chromium.org/106853005/diff/1/Source/core/dom/DOMStringMap.h#newcode80 Source/core/dom/DOMStringMap.h:80: return true; On 2013/12/17 15:59:20, haraken wrote: > > ...
7 years ago (2013-12-17 16:20:08 UTC) #3
sof
https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp File Source/core/storage/Storage.cpp (right): https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp#newcode81 Source/core/storage/Storage.cpp:81: bool Storage::anonymousNamedDeleter(const AtomicString& name, bool& result, ExceptionState& exceptionState) On ...
7 years ago (2013-12-17 16:24:37 UTC) #4
haraken
https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp File Source/core/storage/Storage.cpp (right): https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp#newcode81 Source/core/storage/Storage.cpp:81: bool Storage::anonymousNamedDeleter(const AtomicString& name, bool& result, ExceptionState& exceptionState) On ...
7 years ago (2013-12-17 16:51:04 UTC) #5
sof
On 2013/12/17 16:51:04, haraken wrote: > https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp > File Source/core/storage/Storage.cpp (right): > > https://codereview.chromium.org/106853005/diff/1/Source/core/storage/Storage.cpp#newcode81 > ...
7 years ago (2013-12-17 22:02:10 UTC) #6
jsbell
https://codereview.chromium.org/106853005/diff/20001/Source/bindings/scripts/code_generator_v8.pm File Source/bindings/scripts/code_generator_v8.pm (right): https://codereview.chromium.org/106853005/diff/20001/Source/bindings/scripts/code_generator_v8.pm#newcode4088 Source/bindings/scripts/code_generator_v8.pm:4088: $code .= " return v8SetReturnValueBool(info, result == DeleteSuccess);\n"; Sorry ...
7 years ago (2013-12-18 00:49:33 UTC) #7
sof
https://codereview.chromium.org/106853005/diff/20001/Source/bindings/scripts/code_generator_v8.pm File Source/bindings/scripts/code_generator_v8.pm (right): https://codereview.chromium.org/106853005/diff/20001/Source/bindings/scripts/code_generator_v8.pm#newcode4088 Source/bindings/scripts/code_generator_v8.pm:4088: $code .= " return v8SetReturnValueBool(info, result == DeleteSuccess);\n"; On ...
7 years ago (2013-12-18 06:16:59 UTC) #8
haraken
LGTM. Thanks for improving the IDL conformance!
7 years ago (2013-12-18 09:55:06 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sigbjornf@opera.com/106853005/20001
7 years ago (2013-12-18 10:03:14 UTC) #10
commit-bot: I haz the power
Change committed as 164081
7 years ago (2013-12-18 11:15:16 UTC) #11
jsbell
7 years ago (2013-12-18 16:52:30 UTC) #12
Message was sent while issue was closed.
On 2013/12/18 06:16:59, sof wrote:
>
https://codereview.chromium.org/106853005/diff/20001/Source/bindings/scripts/...
> File Source/bindings/scripts/code_generator_v8.pm (right):
> 
> The v8 interceptor code that's calling will interpret undefined as the
property
> being unknown to the interceptor layer, and fall into accessing the native
> property instead. See JSObject::DeletePropertyWithInterceptor().

Cool, thanks for clarifying!

Powered by Google App Engine
This is Rietveld 408576698