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

Issue 1922923003: Have MessagePort use Oilpan-based weak pointers. (Closed)

Created:
4 years, 7 months ago by sof
Modified:
4 years, 7 months ago
Reviewers:
oilpan-reviews, haraken
CC:
chromium-reviews, kinuko+worker_chromium.org, tyoshino+watch_chromium.org, blink-reviews-html_chromium.org, sof, eae+blinkwatch, falken, blink-reviews-dom_chromium.org, dglazkov+blink, gavinp+loader_chromium.org, horo+watch_chromium.org, blink-reviews, loading-reviews+fetch_chromium.org, Nate Chapin, blink-worker-reviews_chromium.org, rwlbuis
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Have MessagePort use Oilpan-based weak pointers. Using WeakPtr<>/WeakPtrFactory<> with Oilpan heap objects is problematic in the face of lazy sweeping, WeakPtr<> references aren't cleared until the finalizer runs. Should a posted task (like for MessagePort) run before that happens, it might then access already finalized objects that MessagePort refers to. Hence WeakPtr<>s should not be used for Oilpan objects unless extra finalization care is taken _and_ the object depends on WeakPtrFactory<>'s support for explicit revocation. Use Oilpan weak references instead. Also clear out various redundant WeakPtr.h includes throughout Blink. R=haraken BUG=522357 Committed: https://crrev.com/ab9d5d4a1823551e779ad44359d94ccce8add6f2 Cr-Commit-Position: refs/heads/master@{#390105}

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -13 lines) Patch
M third_party/WebKit/Source/core/dom/DocumentInit.h View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/MessagePort.h View 2 chunks +0 lines, -3 lines 1 comment Download
M third_party/WebKit/Source/core/dom/MessagePort.cpp View 4 chunks +2 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/fetch/Resource.cpp View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/html/FormAssociatedElement.h View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/html/HTMLImageElement.h View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/workers/WorkerThread.cpp View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/fetch/GlobalFetch.h View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 12 (7 generated)
sof
please take a look. https://codereview.chromium.org/1922923003/diff/1/third_party/WebKit/Source/core/dom/MessagePort.h File third_party/WebKit/Source/core/dom/MessagePort.h (right): https://codereview.chromium.org/1922923003/diff/1/third_party/WebKit/Source/core/dom/MessagePort.h#newcode124 third_party/WebKit/Source/core/dom/MessagePort.h:124: OwnPtr<WebMessagePortChannel> m_entangledChannel; Note: I'm considering ...
4 years, 7 months ago (2016-04-27 13:50:36 UTC) #2
haraken
LGTM
4 years, 7 months ago (2016-04-27 14:54:34 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1922923003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1922923003/1
4 years, 7 months ago (2016-04-27 15:46:50 UTC) #8
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 7 months ago (2016-04-27 16:51:50 UTC) #10
commit-bot: I haz the power
4 years, 7 months ago (2016-04-30 17:10:41 UTC) #11
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/ab9d5d4a1823551e779ad44359d94ccce8add6f2
Cr-Commit-Position: refs/heads/master@{#390105}

Powered by Google App Engine
This is Rietveld 408576698