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

Issue 1397073002: [Oilpan] Create UnsafePtr to store on-heap pointers in Vector (Closed)

Created:
5 years, 2 months ago by peria
Modified:
5 years, 2 months ago
Reviewers:
oilpan-reviews, haraken
CC:
chromium-reviews, blink-reviews, haraken, kouhei+heap_chromium.org, oilpan-reviews, Mads Ager (chromium)
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Create UnsafePtr to store on-heap pointers in Vector In basic rule, we cannot store pointers for on-heap objects in WTF::Vector. But in some situation like weak processing, we need it. In such cases, you can use UnsafePtr to avoid validations. Please check the pointee is guaranteed to be alive without UnsafePtr<>. BUG=515524 Committed: https://crrev.com/fa48e5f45138dc87c5acca59235df098e18c494c Cr-Commit-Position: refs/heads/master@{#354234}

Patch Set 1 : #

Total comments: 4

Patch Set 2 : #

Patch Set 3 : WIP #

Patch Set 4 : Drop changes to support hash collections #

Patch Set 5 : #

Patch Set 6 : #

Total comments: 2

Patch Set 7 : Make UntracedMember inherit from Member #

Patch Set 8 : Support hash collections #

Total comments: 2

Patch Set 9 : Drop unnecessary parts #

Total comments: 6

Patch Set 10 : Work for nits #

Unified diffs Side-by-side diffs Delta from patch set Stats (+126 lines, -7 lines) Patch
M third_party/WebKit/Source/core/frame/EventHandlerRegistry.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/frame/EventHandlerRegistry.cpp View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/frame/LocalFrame.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/heap/Handle.h View 1 2 3 4 5 6 7 8 9 7 chunks +113 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/heap/Heap.h View 1 2 2 chunks +9 lines, -0 lines 0 comments Download

Messages

Total messages: 19 (5 generated)
peria
PTL
5 years, 2 months ago (2015-10-14 05:23:38 UTC) #4
haraken
https://codereview.chromium.org/1397073002/diff/40001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/40001/third_party/WebKit/Source/platform/heap/Handle.h#newcode879 third_party/WebKit/Source/platform/heap/Handle.h:879: class UnsafePtr { I'd rename UnsafePtr to UnsafeMember or ...
5 years, 2 months ago (2015-10-14 06:00:21 UTC) #5
peria
https://codereview.chromium.org/1397073002/diff/40001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/40001/third_party/WebKit/Source/platform/heap/Handle.h#newcode879 third_party/WebKit/Source/platform/heap/Handle.h:879: class UnsafePtr { On 2015/10/14 06:00:21, haraken wrote: > ...
5 years, 2 months ago (2015-10-14 09:36:28 UTC) #6
haraken
https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h#newcode950 third_party/WebKit/Source/platform/heap/Handle.h:950: class UntracedMember { I'm just curious but would it ...
5 years, 2 months ago (2015-10-14 09:39:53 UTC) #7
peria
On 2015/10/14 09:39:53, haraken wrote: > https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h > File third_party/WebKit/Source/platform/heap/Handle.h (right): > > https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h#newcode950 > ...
5 years, 2 months ago (2015-10-15 01:47:32 UTC) #8
peria
https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/50004/third_party/WebKit/Source/platform/heap/Handle.h#newcode950 third_party/WebKit/Source/platform/heap/Handle.h:950: class UntracedMember { On 2015/10/14 09:39:53, haraken wrote: > ...
5 years, 2 months ago (2015-10-15 02:13:15 UTC) #9
haraken
https://codereview.chromium.org/1397073002/diff/170001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/170001/third_party/WebKit/Source/platform/heap/Handle.h#newcode107 third_party/WebKit/Source/platform/heap/Handle.h:107: PersistentBase(const UntracedMember<U>& other) : m_raw(other) Now that UntracedMember inherits ...
5 years, 2 months ago (2015-10-15 03:55:40 UTC) #10
peria
5 years, 2 months ago (2015-10-15 05:11:37 UTC) #11
peria
https://codereview.chromium.org/1397073002/diff/170001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/170001/third_party/WebKit/Source/platform/heap/Handle.h#newcode107 third_party/WebKit/Source/platform/heap/Handle.h:107: PersistentBase(const UntracedMember<U>& other) : m_raw(other) On 2015/10/15 03:55:39, haraken ...
5 years, 2 months ago (2015-10-15 05:11:58 UTC) #12
haraken
LGTM with comments. https://codereview.chromium.org/1397073002/diff/190001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/190001/third_party/WebKit/Source/platform/heap/Handle.h#newcode877 third_party/WebKit/Source/platform/heap/Handle.h:877: // some reason. // UntracedMember is ...
5 years, 2 months ago (2015-10-15 05:26:08 UTC) #13
peria
https://codereview.chromium.org/1397073002/diff/190001/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1397073002/diff/190001/third_party/WebKit/Source/platform/heap/Handle.h#newcode877 third_party/WebKit/Source/platform/heap/Handle.h:877: // some reason. On 2015/10/15 05:26:08, haraken wrote: > ...
5 years, 2 months ago (2015-10-15 06:03:43 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1397073002/210001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1397073002/210001
5 years, 2 months ago (2015-10-15 06:04:04 UTC) #17
commit-bot: I haz the power
Committed patchset #10 (id:210001)
5 years, 2 months ago (2015-10-15 07:15:10 UTC) #18
commit-bot: I haz the power
5 years, 2 months ago (2015-10-15 07:15:52 UTC) #19
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/fa48e5f45138dc87c5acca59235df098e18c494c
Cr-Commit-Position: refs/heads/master@{#354234}

Powered by Google App Engine
This is Rietveld 408576698