Chromium Code Reviews| Index: content/browser/geolocation/mock_location_provider.cc |
| diff --git a/content/browser/geolocation/mock_location_provider.cc b/content/browser/geolocation/mock_location_provider.cc |
| index f289a1e68717d7d8c46a2fa1be4b1327dbe79424..55b79a6b3520b0b2cf4cb244947f90ccec0827b7 100644 |
| --- a/content/browser/geolocation/mock_location_provider.cc |
| +++ b/content/browser/geolocation/mock_location_provider.cc |
| @@ -16,22 +16,13 @@ |
| #include "base/threading/thread_task_runner_handle.h" |
| namespace content { |
| -MockLocationProvider* MockLocationProvider::instance_ = NULL; |
| -MockLocationProvider::MockLocationProvider(MockLocationProvider** self_ref) |
| +MockLocationProvider::MockLocationProvider() |
| : state_(STOPPED), |
| is_permission_granted_(false), |
| - self_ref_(self_ref), |
| - provider_task_runner_(base::ThreadTaskRunnerHandle::Get()) { |
| - CHECK(self_ref_); |
| - CHECK(*self_ref_ == NULL); |
| - *self_ref_ = this; |
| -} |
| + provider_task_runner_(base::ThreadTaskRunnerHandle::Get()) {} |
| -MockLocationProvider::~MockLocationProvider() { |
| - CHECK(*self_ref_ == this); |
| - *self_ref_ = NULL; |
| -} |
| +MockLocationProvider::~MockLocationProvider() {} |
| void MockLocationProvider::HandlePositionChanged(const Geoposition& position) { |
| if (provider_task_runner_->BelongsToCurrentThread()) { |
| @@ -70,9 +61,7 @@ class AutoMockLocationProvider : public MockLocationProvider { |
| public: |
| AutoMockLocationProvider(bool has_valid_location, |
| bool requires_permission_to_start) |
| - : MockLocationProvider(&instance_), |
| - weak_factory_(this), |
| - requires_permission_to_start_(requires_permission_to_start), |
| + : requires_permission_to_start_(requires_permission_to_start), |
| listeners_updated_(false) { |
| if (has_valid_location) { |
| position_.accuracy = 3; |
| @@ -105,17 +94,19 @@ class AutoMockLocationProvider : public MockLocationProvider { |
| listeners_updated_ = true; |
| base::ThreadTaskRunnerHandle::Get()->PostTask( |
| FROM_HERE, base::Bind(&MockLocationProvider::HandlePositionChanged, |
| - weak_factory_.GetWeakPtr(), position_)); |
| + base::Unretained(this), position_)); |
|
Wez
2016/06/10 23:40:35
What's the rationale for this change? Is the new r
CJ
2016/06/13 23:45:20
I am truthfully not sure. This is something that k
Wez
2016/06/17 05:50:09
Acknowledged.
CJ
2016/06/21 22:16:07
Talked to him. He said since it is test code and o
|
| } |
| } |
| - base::WeakPtrFactory<MockLocationProvider> weak_factory_; |
| + private: |
| const bool requires_permission_to_start_; |
| bool listeners_updated_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(AutoMockLocationProvider); |
| }; |
| LocationProvider* NewMockLocationProvider() { |
| - return new MockLocationProvider(&MockLocationProvider::instance_); |
| + return new MockLocationProvider; |
| } |
| LocationProvider* NewAutoSuccessMockLocationProvider() { |