Browse Source

fix: use try/catch for base class converter error (#24246)

Shelley Vohr 4 years ago
parent
commit
cadc142d05
1 changed files with 8 additions and 4 deletions
  1. 8 4
      shell/browser/api/electron_api_base_window.cc

+ 8 - 4
shell/browser/api/electron_api_base_window.cc

@@ -98,10 +98,14 @@ BaseWindow::BaseWindow(v8::Isolate* isolate,
   window_->AddObserver(this);
 
 #if defined(TOOLKIT_VIEWS)
-  // Sets the window icon.
-  gin::Handle<NativeImage> icon;
-  if (options.Get(options::kIcon, &icon) && !icon.IsEmpty())
-    SetIcon(icon);
+  {
+    v8::TryCatch try_catch(isolate);
+    gin::Handle<NativeImage> icon;
+    if (options.Get(options::kIcon, &icon) && !icon.IsEmpty())
+      SetIcon(icon);
+    if (try_catch.HasCaught())
+      LOG(ERROR) << "Failed to convert NativeImage";
+  }
 #endif
 }