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

Issue 2328453003: Makes use of EngineGeolocationFeature weak_ptr threadsafe. (Closed)

Created:
4 years, 3 months ago by CJ
Modified:
3 years, 11 months ago
Reviewers:
Kevin M, Wez, Khushal
CC:
chromium-reviews, anandc+watch-blimp_chromium.org, maniscalco+watch-blimp_chromium.org, sriramsr+watch-blimp_chromium.org, gcasto+watch-blimp_chromium.org, nyquist+watch-blimp_chromium.org, marcinjb+watch-blimp_chromium.org, jessicag+watch-blimp_chromium.org, kmarshall+watch-blimp_chromium.org, lethalantidote+watch-blimp_chromium.org, dtrainor+watch-blimp_chromium.org, shaktisahu+watch-blimp_chromium.org, khushalsagar+watch-blimp_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Makes use of EngineGeolocationFeature weak_ptr threadsafe. There was an issue where a weak_ptr to EngineGeolocationFeature was being invalidated while another thread was accessing it. This CL corrects this issue. BUG=644483 Committed: https://crrev.com/4b44beefc9298186e5e1e27d0c2f90244bcbfef6 Cr-Commit-Position: refs/heads/master@{#424029}

Patch Set 1 #

Patch Set 2 : Get rid of ui/gl/BUILD.gn change #

Total comments: 10

Patch Set 3 : Addresses kmarshall's #3 comments. #

Total comments: 16

Patch Set 4 : Addresses Wez's #7 comments. #

Patch Set 5 : Addresses Wez's #9 comments. #

Total comments: 4

Patch Set 6 : Adds comments, addresses Wez's #13 comments. #

Total comments: 1

Patch Set 7 : Addresses Wez's #16, kmarshall's #17 comments. #

Patch Set 8 : Merge branch 'master' into threadmess #

Total comments: 6

Patch Set 9 : Addresses Wez's #23 comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+142 lines, -52 lines) Patch
M blimp/engine/feature/geolocation/blimp_location_provider.h View 1 2 3 4 5 6 7 8 3 chunks +11 lines, -2 lines 0 comments Download
M blimp/engine/feature/geolocation/blimp_location_provider.cc View 1 2 3 4 5 6 3 chunks +54 lines, -22 lines 0 comments Download
M blimp/engine/feature/geolocation/blimp_location_provider_unittest.cc View 1 2 3 4 5 6 7 8 7 chunks +67 lines, -12 lines 0 comments Download
M blimp/engine/feature/geolocation/engine_geolocation_feature.h View 1 2 1 chunk +0 lines, -1 line 0 comments Download
M blimp/engine/feature/geolocation/engine_geolocation_feature.cc View 1 2 3 chunks +5 lines, -6 lines 0 comments Download
M blimp/engine/feature/geolocation/engine_geolocation_feature_unittest.cc View 3 chunks +3 lines, -6 lines 0 comments Download
M blimp/engine/feature/geolocation/mock_blimp_location_provider_delegate.h View 1 2 3 4 1 chunk +2 lines, -3 lines 0 comments Download

Messages

Total messages: 30 (7 generated)
CJ
4 years, 3 months ago (2016-09-08 22:09:42 UTC) #2
Kevin M
https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode69 blimp/engine/feature/geolocation/blimp_location_provider.cc:69: delegate_task_runner_->PostTask( You can actually bind a callback which manages ...
4 years, 3 months ago (2016-09-09 17:07:05 UTC) #3
CJ
https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode69 blimp/engine/feature/geolocation/blimp_location_provider.cc:69: delegate_task_runner_->PostTask( On 2016/09/09 17:07:04, Kevin M wrote: > You ...
4 years, 3 months ago (2016-09-09 19:52:41 UTC) #4
CJ
https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode69 blimp/engine/feature/geolocation/blimp_location_provider.cc:69: delegate_task_runner_->PostTask( On 2016/09/09 17:07:04, Kevin M wrote: > You ...
4 years, 3 months ago (2016-09-09 19:52:42 UTC) #5
CJ
On 2016/09/09 19:52:42, CJ wrote: > https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc > File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): > > https://codereview.chromium.org/2328453003/diff/20001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode69 > ...
4 years, 3 months ago (2016-09-12 22:38:14 UTC) #6
Wez
https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode18 blimp/engine/feature/geolocation/blimp_location_provider.cc:18: void InvokeGeopositionCallback( Ah, I think we're going to need ...
4 years, 3 months ago (2016-09-13 20:19:08 UTC) #7
CJ
https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode18 blimp/engine/feature/geolocation/blimp_location_provider.cc:18: void InvokeGeopositionCallback( On 2016/09/13 20:19:07, Wez wrote: > Ah, ...
4 years, 3 months ago (2016-09-13 23:34:03 UTC) #8
Wez
https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode18 blimp/engine/feature/geolocation/blimp_location_provider.cc:18: void InvokeGeopositionCallback( On 2016/09/13 23:34:02, CJ wrote: > On ...
4 years, 3 months ago (2016-09-16 00:40:17 UTC) #9
CJ
https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/40001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode18 blimp/engine/feature/geolocation/blimp_location_provider.cc:18: void InvokeGeopositionCallback( On 2016/09/16 00:40:16, Wez wrote: > On ...
4 years, 3 months ago (2016-09-16 22:55:54 UTC) #10
Wez
https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode23 blimp/engine/feature/geolocation/blimp_location_provider.cc:23: if (provider) Isn't InvokeGeopositionCallback called from the delegate_task_runner_, though, ...
4 years, 3 months ago (2016-09-17 01:47:43 UTC) #11
CJ
https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode23 blimp/engine/feature/geolocation/blimp_location_provider.cc:23: if (provider) On 2016/09/17 01:47:42, Wez wrote: > Isn't ...
4 years, 3 months ago (2016-09-23 18:03:58 UTC) #12
Wez
https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode23 blimp/engine/feature/geolocation/blimp_location_provider.cc:23: if (provider) On 2016/09/23 18:03:58, CJ wrote: > On ...
4 years, 3 months ago (2016-09-23 22:28:36 UTC) #13
CJ
On 2016/09/23 22:28:36, Wez wrote: > https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc > File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): > > https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode23 > ...
4 years, 2 months ago (2016-09-28 00:57:29 UTC) #14
Wez
On 2016/09/28 00:57:29, CJ wrote: > On 2016/09/23 22:28:36, Wez wrote: > > > https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc ...
4 years, 2 months ago (2016-09-28 11:56:03 UTC) #15
Wez
On 2016/09/28 11:56:03, Wez wrote: > On 2016/09/28 00:57:29, CJ wrote: > > On 2016/09/23 ...
4 years, 2 months ago (2016-09-28 11:57:50 UTC) #16
Kevin M
https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc File blimp/engine/feature/geolocation/blimp_location_provider.cc (right): https://codereview.chromium.org/2328453003/diff/80001/blimp/engine/feature/geolocation/blimp_location_provider.cc#newcode25 blimp/engine/feature/geolocation/blimp_location_provider.cc:25: base::Bind(callback, provider.get(), geoposition)); Weak pointers must be dereferenced and ...
4 years, 2 months ago (2016-10-06 19:30:52 UTC) #17
CJ
On 2016/09/28 11:57:50, Wez wrote: > On 2016/09/28 11:56:03, Wez wrote: > > On 2016/09/28 ...
4 years, 2 months ago (2016-10-06 20:58:28 UTC) #18
Wez
https://codereview.chromium.org/2328453003/diff/140001/blimp/engine/feature/geolocation/blimp_location_provider.h File blimp/engine/feature/geolocation/blimp_location_provider.h (right): https://codereview.chromium.org/2328453003/diff/140001/blimp/engine/feature/geolocation/blimp_location_provider.h#newcode47 blimp/engine/feature/geolocation/blimp_location_provider.h:47: void OnLocationUpdate(const device::Geoposition& geoposition); This should be private, since ...
4 years, 2 months ago (2016-10-07 21:42:46 UTC) #23
CJ
https://codereview.chromium.org/2328453003/diff/140001/blimp/engine/feature/geolocation/blimp_location_provider.h File blimp/engine/feature/geolocation/blimp_location_provider.h (right): https://codereview.chromium.org/2328453003/diff/140001/blimp/engine/feature/geolocation/blimp_location_provider.h#newcode47 blimp/engine/feature/geolocation/blimp_location_provider.h:47: void OnLocationUpdate(const device::Geoposition& geoposition); On 2016/10/07 21:42:46, Wez wrote: ...
4 years, 2 months ago (2016-10-08 00:05:56 UTC) #24
Wez
lgtm
4 years, 2 months ago (2016-10-08 00:19:13 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2328453003/160001
4 years, 2 months ago (2016-10-08 00:19:38 UTC) #27
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 2 months ago (2016-10-08 00:49:51 UTC) #28
commit-bot: I haz the power
4 years, 2 months ago (2016-10-08 00:51:43 UTC) #30
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/4b44beefc9298186e5e1e27d0c2f90244bcbfef6
Cr-Commit-Position: refs/heads/master@{#424029}

Powered by Google App Engine
This is Rietveld 408576698