瀏覽代碼

LibGUI: Complain about malformed "layout" values in JSON GUI

Andreas Kling 4 年之前
父節點
當前提交
6590eb8eb7
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      Libraries/LibGUI/Widget.cpp

+ 4 - 0
Libraries/LibGUI/Widget.cpp

@@ -949,6 +949,10 @@ bool Widget::load_from_json(const JsonObject& json)
         set_preferred_size(preferred_width.to_i32(), preferred_size().height());
         set_preferred_size(preferred_width.to_i32(), preferred_size().height());
 
 
     auto layout_value = json.get("layout");
     auto layout_value = json.get("layout");
+    if (!layout_value.is_null() && !layout_value.is_object()) {
+        dbg() << "layout is not an object";
+        return false;
+    }
     if (layout_value.is_object()) {
     if (layout_value.is_object()) {
         auto& layout = layout_value.as_object();
         auto& layout = layout_value.as_object();
         auto class_name = layout.get("class");
         auto class_name = layout.get("class");