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

Unified Diff: chrome/browser/chromeos/login/screens/error_screen.cc

Issue 424613003: Add debug code to help understand SEGV in ~ErrorScreen. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix volatile qualifier. Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/chromeos/login/screens/error_screen.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/login/screens/error_screen.cc
diff --git a/chrome/browser/chromeos/login/screens/error_screen.cc b/chrome/browser/chromeos/login/screens/error_screen.cc
index 82c1c2ff3a53817c7a90c8397143764f2c412dc7..737fb5a6b8e457e1c46c00327ddbc2a50edc12de 100644
--- a/chrome/browser/chromeos/login/screens/error_screen.cc
+++ b/chrome/browser/chromeos/login/screens/error_screen.cc
@@ -11,21 +11,30 @@
#include "chrome/browser/chromeos/login/wizard_controller.h"
#include "chrome/browser/chromeos/settings/cros_settings.h"
+namespace {
+void* const kCanaryConstant = (void*)0xbaddecafbaddecafLLU;
+}
+
namespace chromeos {
ErrorScreen::ErrorScreen(ScreenObserver* screen_observer,
ErrorScreenActor* actor)
: WizardScreen(screen_observer),
+ canary_1_(kCanaryConstant),
actor_(actor),
+ canary_2_(kCanaryConstant),
parent_screen_(OobeDisplay::SCREEN_UNKNOWN),
weak_factory_(this) {
- DCHECK(actor_);
+ CHECK(actor_);
actor_->SetDelegate(this);
}
ErrorScreen::~ErrorScreen() {
- if (actor_)
- actor_->SetDelegate(NULL);
+ CHECK(this);
+ CHECK(canary_1_ == kCanaryConstant);
+ CHECK(canary_2_ == kCanaryConstant);
+ CHECK(actor_);
+ actor_->SetDelegate(NULL);
}
void ErrorScreen::PrepareToShow() {
« no previous file with comments | « chrome/browser/chromeos/login/screens/error_screen.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698