}
(cinfo.src->term_source)(&cinfo);
jpeg_destroy_decompress(&cinfo);
- if (image->Ok()) image->Destroy();
+ if (image->IsOk()) image->Destroy();
return false;
}
jpeg_start_decompress( &cinfo );
image->Create( cinfo.output_width, cinfo.output_height );
- if (!image->Ok()) {
+ if (!image->IsOk()) {
jpeg_finish_decompress( &cinfo );
jpeg_destroy_decompress( &cinfo );
return false;
image->SetOption(wxIMAGE_OPTION_RESOLUTIONUNIT, cinfo.density_unit);
}
+ if ( cinfo.image_width != cinfo.output_width || cinfo.image_height != cinfo.output_height )
+ {
+ // save the original image size
+ image->SetOption(wxIMAGE_OPTION_ORIGINAL_WIDTH, cinfo.image_width);
+ image->SetOption(wxIMAGE_OPTION_ORIGINAL_HEIGHT, cinfo.image_height);
+ }
+
jpeg_finish_decompress( &cinfo );
jpeg_destroy_decompress( &cinfo );
return true;