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

Side by Side Diff: chrome/browser/browsing_data/browsing_data_remover_impl.h

Issue 2781083002: Fix the multi-threaded access to WeakPtr<BrowsingDataRemoverImpl> (Closed)
Patch Set: Static method to local namespace. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_ 5 #ifndef CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_
6 #define CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_ 6 #define CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <queue> 10 #include <queue>
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 198
199 // Notifies observers and transitions to the idle state. 199 // Notifies observers and transitions to the idle state.
200 void Notify(); 200 void Notify();
201 201
202 // Checks if we are all done, and if so, calls Notify(). 202 // Checks if we are all done, and if so, calls Notify().
203 void NotifyIfDone(); 203 void NotifyIfDone();
204 204
205 // Returns true if we're all done. 205 // Returns true if we're all done.
206 bool AllDone(); 206 bool AllDone();
207 207
208 // Retrieve a UI thread-bound weak pointer to this BrowsingDataRemoverImpl.
209 base::WeakPtr<BrowsingDataRemoverImpl> GetWeakPtr();
210
208 // The browser context we're to remove from. 211 // The browser context we're to remove from.
209 content::BrowserContext* browser_context_; 212 content::BrowserContext* browser_context_;
210 213
211 // A delegate to delete the embedder-specific data. 214 // A delegate to delete the embedder-specific data.
212 std::unique_ptr<BrowsingDataRemoverDelegate> embedder_delegate_; 215 std::unique_ptr<BrowsingDataRemoverDelegate> embedder_delegate_;
213 216
214 // Start time to delete from. 217 // Start time to delete from.
215 base::Time delete_begin_; 218 base::Time delete_begin_;
216 219
217 // End time to delete to. 220 // End time to delete to.
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
251 254
252 // We do not own this. 255 // We do not own this.
253 content::StoragePartition* storage_partition_for_testing_ = nullptr; 256 content::StoragePartition* storage_partition_for_testing_ = nullptr;
254 257
255 base::WeakPtrFactory<BrowsingDataRemoverImpl> weak_ptr_factory_; 258 base::WeakPtrFactory<BrowsingDataRemoverImpl> weak_ptr_factory_;
256 259
257 DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverImpl); 260 DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverImpl);
258 }; 261 };
259 262
260 #endif // CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_ 263 #endif // CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_REMOVER_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698