|
@@ -156,7 +156,11 @@ public:
|
|
|
|
|
|
static Error _jpgd_save_to_output_stream(jpge::output_stream *p_output_stream, const Ref<Image> &p_img, float p_quality) {
|
|
|
ERR_FAIL_COND_V(p_img.is_null() || p_img->is_empty(), ERR_INVALID_PARAMETER);
|
|
|
- Ref<Image> image = p_img;
|
|
|
+ Ref<Image> image = p_img->duplicate();
|
|
|
+ if (image->is_compressed()) {
|
|
|
+ Error error = image->decompress();
|
|
|
+ ERR_FAIL_COND_V_MSG(error != OK, error, "Couldn't decompress image.");
|
|
|
+ }
|
|
|
if (image->get_format() != Image::FORMAT_RGB8) {
|
|
|
image->convert(Image::FORMAT_RGB8);
|
|
|
}
|