views: Fix crash when setSizeConstrains is called early
authorCheng Zhao <zcbenz@gmail.com>
Thu, 15 Oct 2015 08:19:45 +0000 (16:19 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Thu, 15 Oct 2015 08:36:28 +0000 (16:36 +0800)
atom/browser/native_window_views.cc

index 4c8d014..e368823 100644 (file)
@@ -390,7 +390,10 @@ gfx::Size NativeWindowViews::GetContentSize() {
 void NativeWindowViews::SetContentSizeConstraints(
     const extensions::SizeConstraints& size_constraints) {
   NativeWindow::SetContentSizeConstraints(size_constraints);
-  window_->OnSizeConstraintsChanged();
+  // widget_delegate() is only available after Init() is called, we make use of
+  // this to determine whether native widget has initialized.
+  if (window_ && window_->widget_delegate())
+    window_->OnSizeConstraintsChanged();
 #if defined(USE_X11)
   if (resizable_)
     old_size_constraints_ = size_constraints;