Преглед изворни кода

PixelPaint: Add layer to image before setting properties

Previously when opening an image with layers that had properties like
visibility set, PixelPaint would crash when trying to trigger
layer_did_modify_properties() without in image. Avoid this by
adding the layer to the image before setting the properties.
Marcus Nilsson пре 4 година
родитељ
комит
54d4df668a
1 измењених фајлова са 2 додато и 2 уклоњено
  1. 2 2
      Userland/Applications/PixelPaint/Image.cpp

+ 2 - 2
Userland/Applications/PixelPaint/Image.cpp

@@ -125,12 +125,12 @@ Result<NonnullRefPtr<Image>, String> Image::try_create_from_pixel_paint_file(Str
         if (width != layer->size().width() || height != layer->size().height())
             return String { "Decoded layer bitmap has wrong size"sv };
 
+        image->add_layer(*layer);
+
         layer->set_location({ layer_object.get("locationx").to_i32(), layer_object.get("locationy").to_i32() });
         layer->set_opacity_percent(layer_object.get("opacity_percent").to_i32());
         layer->set_visible(layer_object.get("visible").as_bool());
         layer->set_selected(layer_object.get("selected").as_bool());
-
-        image->add_layer(*layer);
     }
 
     image->set_path(file_path);