|
|
DescriptionOilpan: tidy up unsafe heap pointer reference following r361300.
R=dcheng
BUG=
Committed: https://crrev.com/e1fb1f36e75b75fa3f788e81e462778224b3a9a3
Cr-Commit-Position: refs/heads/master@{#361852}
Patch Set 1 #
Messages
Total messages: 22 (7 generated)
sigbjornf@opera.com changed reviewers: + dcheng@chromium.org, oilpan-reviews@chromium.org
please take a look.
Nice, I missed this. Thanks!
LGTM too =P
On 2015/11/25 20:36:38, dcheng wrote: > Nice, I missed this. Thanks! The GC plugin will soon flag such bare references as errors, so help is on the way. :)
Description was changed from ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R= BUG= ========== to ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R=dcheng BUG= ==========
The CQ bit was checked by sigbjornf@opera.com
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1482493002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1482493002/1
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: ios_dbg_simulator_ninja on tryserver.chromium.mac (JOB_TIMED_OUT, no build URL) ios_rel_device_ninja on tryserver.chromium.mac (JOB_TIMED_OUT, no build URL)
LGTM, but I'd prefer using RefPtrWillBePersistent. RawPtrWillBePersistent implies a possibility that we have to use a RawPtr to avoid a cycle but can use a Persistent for some reason. We need to consider why every time.
On 2015/11/25 23:33:56, haraken wrote: > LGTM, but I'd prefer using RefPtrWillBePersistent. > > RawPtrWillBePersistent implies a possibility that we have to use a RawPtr to > avoid a cycle but can use a Persistent for some reason. We need to consider why > every time. This is a back reference from the client to parent view -- wouldn't you have to consider every time if that doesn't create a cycle non-Oilpan if you use RefPtr<> ?
On 2015/11/26 06:47:34, sof wrote: > On 2015/11/25 23:33:56, haraken wrote: > > LGTM, but I'd prefer using RefPtrWillBePersistent. > > > > RawPtrWillBePersistent implies a possibility that we have to use a RawPtr to > > avoid a cycle but can use a Persistent for some reason. We need to consider > why > > every time. > > This is a back reference from the client to parent view -- wouldn't you have to > consider every time if that doesn't create a cycle non-Oilpan if you use > RefPtr<> ? If this is a back reference (and cannot change it to a RefPtr), why can we use a Persistent in oilpan?
On 2015/11/26 06:55:18, haraken wrote: > On 2015/11/26 06:47:34, sof wrote: > > On 2015/11/25 23:33:56, haraken wrote: > > > LGTM, but I'd prefer using RefPtrWillBePersistent. > > > > > > RawPtrWillBePersistent implies a possibility that we have to use a RawPtr to > > > avoid a cycle but can use a Persistent for some reason. We need to consider > > why > > > every time. > > > > This is a back reference from the client to parent view -- wouldn't you have > to > > consider every time if that doesn't create a cycle non-Oilpan if you use > > RefPtr<> ? > > If this is a back reference (and cannot change it to a RefPtr), why can we use a > Persistent in oilpan? Oh, TestWebRemoteFramClient::m_frame is effectively an owned (frame) reference, not a back pointer.
On 2015/11/26 07:09:49, sof wrote: > On 2015/11/26 06:55:18, haraken wrote: > > On 2015/11/26 06:47:34, sof wrote: > > > On 2015/11/25 23:33:56, haraken wrote: > > > > LGTM, but I'd prefer using RefPtrWillBePersistent. > > > > > > > > RawPtrWillBePersistent implies a possibility that we have to use a RawPtr > to > > > > avoid a cycle but can use a Persistent for some reason. We need to > consider > > > why > > > > every time. > > > > > > This is a back reference from the client to parent view -- wouldn't you have > > to > > > consider every time if that doesn't create a cycle non-Oilpan if you use > > > RefPtr<> ? > > > > If this is a back reference (and cannot change it to a RefPtr), why can we use > a > > Persistent in oilpan? > > Oh, TestWebRemoteFramClient::m_frame is effectively an owned (frame) reference, > not a back pointer. RawPtrWillBePersistent<> is the correct type to use -- see WebRemoteFrameImpl::create().
On 2015/11/26 07:32:21, sof wrote: > On 2015/11/26 07:09:49, sof wrote: > > On 2015/11/26 06:55:18, haraken wrote: > > > On 2015/11/26 06:47:34, sof wrote: > > > > On 2015/11/25 23:33:56, haraken wrote: > > > > > LGTM, but I'd prefer using RefPtrWillBePersistent. > > > > > > > > > > RawPtrWillBePersistent implies a possibility that we have to use a > RawPtr > > to > > > > > avoid a cycle but can use a Persistent for some reason. We need to > > consider > > > > why > > > > > every time. > > > > > > > > This is a back reference from the client to parent view -- wouldn't you > have > > > to > > > > consider every time if that doesn't create a cycle non-Oilpan if you use > > > > RefPtr<> ? > > > > > > If this is a back reference (and cannot change it to a RefPtr), why can we > use > > a > > > Persistent in oilpan? > > > > Oh, TestWebRemoteFramClient::m_frame is effectively an owned (frame) > reference, > > not a back pointer. > > RawPtrWillBePersistent<> is the correct type to use -- see > WebRemoteFrameImpl::create(). Thanks, it's nasty that non-oilpan returns a leakRef-ed raw pointer... Anyway this CL LGTM.
The CQ bit was checked by sigbjornf@opera.com
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1482493002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1482493002/1
Message was sent while issue was closed.
Description was changed from ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R=dcheng BUG= ========== to ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R=dcheng BUG= ==========
Message was sent while issue was closed.
Committed patchset #1 (id:1)
Message was sent while issue was closed.
Description was changed from ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R=dcheng BUG= ========== to ========== Oilpan: tidy up unsafe heap pointer reference following r361300. R=dcheng BUG= Committed: https://crrev.com/e1fb1f36e75b75fa3f788e81e462778224b3a9a3 Cr-Commit-Position: refs/heads/master@{#361852} ==========
Message was sent while issue was closed.
Patchset 1 (id:??) landed as https://crrev.com/e1fb1f36e75b75fa3f788e81e462778224b3a9a3 Cr-Commit-Position: refs/heads/master@{#361852} |