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

Side by Side Diff: chrome/browser/browser_process_impl.h

Issue 2664004: Win: Fix race possible during startup before first Browser is created. (Closed) Base URL: git://codf21.jail/chromium.git
Patch Set: remove no-longer true comment from process_singleton_win Created 10 years, 6 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
« no previous file with comments | « no previous file | chrome/browser/browser_process_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 // When each service is created, we set a flag indicating this. At this point, 5 // When each service is created, we set a flag indicating this. At this point,
6 // the service initialization could fail or succeed. This allows us to remember 6 // the service initialization could fail or succeed. This allows us to remember
7 // if we tried to create a service, and not try creating it over and over if 7 // if we tried to create a service, and not try creating it over and over if
8 // the creation failed. 8 // the creation failed.
9 9
10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ 10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 if (!created_debugger_wrapper_) 164 if (!created_debugger_wrapper_)
165 CreateDebuggerWrapper(port); 165 CreateDebuggerWrapper(port);
166 } 166 }
167 167
168 virtual unsigned int AddRefModule(); 168 virtual unsigned int AddRefModule();
169 169
170 virtual unsigned int ReleaseModule(); 170 virtual unsigned int ReleaseModule();
171 171
172 virtual bool IsShuttingDown() { 172 virtual bool IsShuttingDown() {
173 DCHECK(CalledOnValidThread()); 173 DCHECK(CalledOnValidThread());
174 return 0 == module_ref_count_; 174 return did_start_ && 0 == module_ref_count_;
175 } 175 }
176 176
177 virtual printing::PrintJobManager* print_job_manager(); 177 virtual printing::PrintJobManager* print_job_manager();
178 178
179 virtual GoogleURLTracker* google_url_tracker() { 179 virtual GoogleURLTracker* google_url_tracker() {
180 DCHECK(CalledOnValidThread()); 180 DCHECK(CalledOnValidThread());
181 if (!google_url_tracker_.get()) 181 if (!google_url_tracker_.get())
182 CreateGoogleURLTracker(); 182 CreateGoogleURLTracker();
183 return google_url_tracker_.get(); 183 return google_url_tracker_.get();
184 } 184 }
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
296 scoped_ptr<StatusTrayManager> status_tray_manager_; 296 scoped_ptr<StatusTrayManager> status_tray_manager_;
297 297
298 scoped_ptr<AutomationProviderList> automation_provider_list_; 298 scoped_ptr<AutomationProviderList> automation_provider_list_;
299 299
300 scoped_ptr<GoogleURLTracker> google_url_tracker_; 300 scoped_ptr<GoogleURLTracker> google_url_tracker_;
301 scoped_ptr<IntranetRedirectDetector> intranet_redirect_detector_; 301 scoped_ptr<IntranetRedirectDetector> intranet_redirect_detector_;
302 302
303 scoped_ptr<NotificationService> main_notification_service_; 303 scoped_ptr<NotificationService> main_notification_service_;
304 304
305 unsigned int module_ref_count_; 305 unsigned int module_ref_count_;
306 bool did_start_;
306 307
307 // Ensures that all the print jobs are finished before closing the browser. 308 // Ensures that all the print jobs are finished before closing the browser.
308 scoped_ptr<printing::PrintJobManager> print_job_manager_; 309 scoped_ptr<printing::PrintJobManager> print_job_manager_;
309 310
310 std::string locale_; 311 std::string locale_;
311 312
312 bool checked_for_new_frames_; 313 bool checked_for_new_frames_;
313 bool using_new_frames_; 314 bool using_new_frames_;
314 315
315 // This service just sits around and makes thumanails for tabs. It does 316 // This service just sits around and makes thumanails for tabs. It does
(...skipping 16 matching lines...) Expand all
332 // restarted, and if that's the case, restarts the browser. 333 // restarted, and if that's the case, restarts the browser.
333 void OnAutoupdateTimer(); 334 void OnAutoupdateTimer();
334 bool CanAutorestartForUpdate() const; 335 bool CanAutorestartForUpdate() const;
335 void RestartPersistentInstance(); 336 void RestartPersistentInstance();
336 #endif // defined(OS_WIN) || defined(OS_LINUX) 337 #endif // defined(OS_WIN) || defined(OS_LINUX)
337 338
338 DISALLOW_COPY_AND_ASSIGN(BrowserProcessImpl); 339 DISALLOW_COPY_AND_ASSIGN(BrowserProcessImpl);
339 }; 340 };
340 341
341 #endif // CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ 342 #endif // CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/browser_process_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698