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

Issue 1573283004: Oilpan: provide a weak 'this' pointer abstraction for cancellable closures. (Closed)

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

Description

Oilpan: provide a weak 'this' pointer abstraction for cancellable closures. For CancellableTaskFactory objects owned by an Oilpan heap object, the factory's closure maintain a weak reference back to its heap object owner -- the closure must not invoke a method on that heap object once the weak reference is cleared. That latter check for a cleared weak reference wasn't in place; provide it here. Due to wtf/ and platform/heap/ dependency constraints, we're forced to do that indirectly by way of using a WeakPtr<>. R=haraken BUG=575272 Committed: https://crrev.com/88e7f2572537569a657d3e1b94f3cd1a221d1eb1 Cr-Commit-Position: refs/heads/master@{#368851}

Patch Set 1 #

Total comments: 2

Patch Set 2 : add comments + TODOs #

Unified diffs Side-by-side diffs Delta from patch set Stats (+17 lines, -8 lines) Patch
M third_party/WebKit/Source/platform/heap/Handle.h View 1 2 chunks +16 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/platform/scheduler/CancellableTaskFactory.h View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 25 (11 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1573283004/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1573283004/1
4 years, 11 months ago (2016-01-11 21:51:25 UTC) #2
sof
please take a look. Ad-hoc solution given that wtf/Functional.h cannot work over CrossThreadWeakPersistent<>.
4 years, 11 months ago (2016-01-11 22:14:44 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-11 23:25:43 UTC) #6
haraken
LGTM https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h#newcode1572 third_party/WebKit/Source/platform/heap/Handle.h:1572: struct ParamStorageTraits<blink::CrossThreadWeakPersistentThisPointer<T>> { CrossThreadWeakPersistentThisPointer => WeakPersistentForFunctionBind ?
4 years, 11 months ago (2016-01-12 00:04:57 UTC) #8
sof
https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h File third_party/WebKit/Source/platform/heap/Handle.h (right): https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h#newcode1572 third_party/WebKit/Source/platform/heap/Handle.h:1572: struct ParamStorageTraits<blink::CrossThreadWeakPersistentThisPointer<T>> { On 2016/01/12 00:04:57, haraken wrote: > ...
4 years, 11 months ago (2016-01-12 07:23:40 UTC) #9
haraken
On 2016/01/12 07:23:40, sof wrote: > https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h > File third_party/WebKit/Source/platform/heap/Handle.h (right): > > https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h#newcode1572 > ...
4 years, 11 months ago (2016-01-12 07:27:55 UTC) #10
sof
On 2016/01/12 07:27:55, haraken wrote: > On 2016/01/12 07:23:40, sof wrote: > > > https://codereview.chromium.org/1573283004/diff/1/third_party/WebKit/Source/platform/heap/Handle.h ...
4 years, 11 months ago (2016-01-12 07:29:46 UTC) #11
sof
On 2016/01/12 07:29:46, sof wrote: > On 2016/01/12 07:27:55, haraken wrote: > > On 2016/01/12 ...
4 years, 11 months ago (2016-01-12 08:45:42 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1573283004/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1573283004/20001
4 years, 11 months ago (2016-01-12 08:45:54 UTC) #14
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-12 10:49:34 UTC) #17
sof
webkit_tests results looks fine on the Oilpan bot, landing.
4 years, 11 months ago (2016-01-12 11:52:10 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1573283004/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1573283004/20001
4 years, 11 months ago (2016-01-12 11:52:33 UTC) #21
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 11 months ago (2016-01-12 11:56:30 UTC) #23
commit-bot: I haz the power
4 years, 11 months ago (2016-01-12 11:57:22 UTC) #25
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/88e7f2572537569a657d3e1b94f3cd1a221d1eb1
Cr-Commit-Position: refs/heads/master@{#368851}

Powered by Google App Engine
This is Rietveld 408576698