diff --git a/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.cpp b/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.cpp index 995937f28b..d85c79e1f2 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.cpp @@ -75,9 +75,11 @@ static OwnPtr probe_and_sniff_for_appropriate_plugin_with_kn auto validation_result = plugin.validate_before_create(bytes).release_value_but_fixme_should_propagate_errors(); if (!validation_result) continue; - auto plugin_decoder = plugin.create(bytes).release_value_but_fixme_should_propagate_errors(); - if (!plugin_decoder->initialize().is_error()) - return plugin_decoder; + auto plugin_decoder = plugin.create(bytes); + if (!plugin_decoder.is_error()) { + if (!plugin_decoder.value()->initialize().is_error()) + return plugin_decoder.release_value(); + } } return {}; }