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

Side by Side Diff: chrome/browser/profiles/profile_manager.h

Issue 2698683002: Forced ephemeral profile deletion on browser removal crash fix. (Closed)
Patch Set: Created 3 years, 10 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 // This class keeps track of the currently-active profiles in the runtime. 5 // This class keeps track of the currently-active profiles in the runtime.
6 6
7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ 7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_
8 #define CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ 8 #define CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_
9 9
10 #include <stddef.h> 10 #include <stddef.h>
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 void MaybeScheduleProfileForDeletion( 195 void MaybeScheduleProfileForDeletion(
196 const base::FilePath& profile_dir, 196 const base::FilePath& profile_dir,
197 const CreateCallback& callback, 197 const CreateCallback& callback,
198 ProfileMetrics::ProfileDelete deletion_source); 198 ProfileMetrics::ProfileDelete deletion_source);
199 199
200 // Schedules the profile at the given path to be deleted on shutdown. If we're 200 // Schedules the profile at the given path to be deleted on shutdown. If we're
201 // deleting the last profile, a new one will be created in its place, and in 201 // deleting the last profile, a new one will be created in its place, and in
202 // that case the callback will be called when profile creation is complete. 202 // that case the callback will be called when profile creation is complete.
203 void ScheduleProfileForDeletion(const base::FilePath& profile_dir, 203 void ScheduleProfileForDeletion(const base::FilePath& profile_dir,
204 const CreateCallback& callback); 204 const CreateCallback& callback);
205 // Schedules the forced ephemeral profile at the given path to be deleted on
Bernhard Bauer 2017/02/15 18:03:30 Nit: Empty line before comments please :)
206 // shutdown. When all browser windows are closed browser should become
207 // profileless.
Bernhard Bauer 2017/02/15 18:03:30 I don't understand that sentence. When all browser
palar 2017/02/16 10:39:04 When all browser windows for exact ephemeral profi
pastarmovj 2017/02/16 10:43:26 Since the ephemeral profile policy applies across
208 void ScheduleForcedEphemeralProfileForDeletion(
209 const base::FilePath& profile_dir);
205 #endif 210 #endif
206 211
207 // Autoloads profiles if they are running background apps. 212 // Autoloads profiles if they are running background apps.
208 void AutoloadProfiles(); 213 void AutoloadProfiles();
209 214
210 // Checks if any ephemeral profiles are left behind (e.g. because of a browser 215 // Checks if any ephemeral profiles are left behind (e.g. because of a browser
211 // crash) and schedule them for deletion. 216 // crash) and schedule them for deletion.
212 void CleanUpEphemeralProfiles(); 217 void CleanUpEphemeralProfiles();
213 218
214 // Checks if files of deleted profiles are left behind (e.g. because of a 219 // Checks if files of deleted profiles are left behind (e.g. because of a
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
430 class ProfileManagerWithoutInit : public ProfileManager { 435 class ProfileManagerWithoutInit : public ProfileManager {
431 public: 436 public:
432 explicit ProfileManagerWithoutInit(const base::FilePath& user_data_dir); 437 explicit ProfileManagerWithoutInit(const base::FilePath& user_data_dir);
433 438
434 protected: 439 protected:
435 void DoFinalInitForServices(Profile*, bool) override {} 440 void DoFinalInitForServices(Profile*, bool) override {}
436 void DoFinalInitLogging(Profile*) override {} 441 void DoFinalInitLogging(Profile*) override {}
437 }; 442 };
438 443
439 #endif // CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ 444 #endif // CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/profiles/profile_manager.cc » ('j') | chrome/browser/profiles/profile_manager.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698