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

Issue 1294293004: Oilpan: Move WebFrameWidgetImpl into Oilpan heap. (Closed)

Created:
5 years, 4 months ago by Yuta Kitamura
Modified:
5 years, 4 months ago
CC:
dcheng, blink-reviews, mlamouri+watch-blink_chromium.org
Target Ref:
refs/remotes/origin/master
Project:
blink
Visibility:
Public.

Description

Oilpan: Move WebFrameWidgetImpl into Oilpan heap. The allocation and deallocation scheme of this class' instance is a bit unusual, because these instances are passed to the Chromium side. The contract between Chromium and us is basically: "call close() when you finish using it". WebFrameWidgetImpl::create() calls leakRef() to keep the object alive, and WebFrameWidgetImpl::close() does deref() to free up the object. To mimic this keep-alive semantics in the Oilpan world, SelfKeepAlive<> is used. This patch fixes a raw pointer in WebFrameWidgetImpl. BUG=509911 R=haraken@chromium.org, oilpan-reviews@chromium.org, sigbjornf@opera.com Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=200800

Patch Set 1 #

Total comments: 2

Patch Set 2 : Clear more fields on close(). #

Unified diffs Side-by-side diffs Delta from patch set Stats (+36 lines, -5 lines) Patch
M Source/web/WebFrameWidgetImpl.h View 4 chunks +15 lines, -5 lines 0 comments Download
M Source/web/WebFrameWidgetImpl.cpp View 1 4 chunks +21 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (4 generated)
Yuta Kitamura
5 years, 4 months ago (2015-08-18 07:46:28 UTC) #1
haraken
https://codereview.chromium.org/1294293004/diff/1/Source/web/WebFrameWidgetImpl.cpp File Source/web/WebFrameWidgetImpl.cpp (right): https://codereview.chromium.org/1294293004/diff/1/Source/web/WebFrameWidgetImpl.cpp#newcode132 Source/web/WebFrameWidgetImpl.cpp:132: m_client = nullptr; Can we clear m_layerTreeView, m_rootLayer, m_rootGraphicsLayer ...
5 years, 4 months ago (2015-08-18 08:03:08 UTC) #2
Yuta Kitamura
https://codereview.chromium.org/1294293004/diff/1/Source/web/WebFrameWidgetImpl.cpp File Source/web/WebFrameWidgetImpl.cpp (right): https://codereview.chromium.org/1294293004/diff/1/Source/web/WebFrameWidgetImpl.cpp#newcode132 Source/web/WebFrameWidgetImpl.cpp:132: m_client = nullptr; On 2015/08/18 08:03:08, haraken wrote: > ...
5 years, 4 months ago (2015-08-18 08:33:59 UTC) #3
haraken
LGTM
5 years, 4 months ago (2015-08-18 08:40:14 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1294293004/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1294293004/20001
5 years, 4 months ago (2015-08-19 04:19:03 UTC) #6
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_gn_dbg on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_gn_dbg/builds/105245)
5 years, 4 months ago (2015-08-19 04:40:28 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1294293004/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1294293004/20001
5 years, 4 months ago (2015-08-19 04:41:32 UTC) #10
dcheng
Note: I don't think there's anything that actually requires that this class be refcounted. Would ...
5 years, 4 months ago (2015-08-19 05:17:51 UTC) #12
commit-bot: I haz the power
5 years, 4 months ago (2015-08-19 06:09:03 UTC) #13
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=200800

Powered by Google App Engine
This is Rietveld 408576698