From: dirk Date: Sun, 3 Nov 2013 13:21:16 +0000 (+0000) Subject: Fixed setting quality. X-Git-Tag: 7.0.1-0~3159 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=871abab889a2357d68ae6378cc67d92f6af2b15d;p=imagemagick Fixed setting quality. --- diff --git a/coders/jpeg.c b/coders/jpeg.c index 748f0f2fe..d62a0d59e 100644 --- a/coders/jpeg.c +++ b/coders/jpeg.c @@ -2251,6 +2251,7 @@ static MagickBooleanType WriteJPEGImage(const ImageInfo *image_info, (void) LogMagickEvent(CoderEvent,GetMagickModule(), "Interlace: nonprogressive"); #endif + quality=92; option=GetImageOption(image_info,"jpeg:extent"); if (option != (const char *) NULL) { @@ -2282,20 +2283,19 @@ static MagickBooleanType WriteJPEGImage(const ImageInfo *image_info, maximum=101; for (minimum=2; minimum < maximum; ) { - jpeg_image->quality=minimum+(maximum-minimum+1)/2; + jpeg_info->quality=minimum+(maximum-minimum+1)/2; status=WriteJPEGImage(jpeg_info,jpeg_image,exception); if (GetBlobSize(jpeg_image) <= extent) - minimum=jpeg_image->quality+1; + minimum=jpeg_info->quality+1; else - maximum=jpeg_image->quality-1; + maximum=jpeg_info->quality-1; } (void) RelinquishUniqueFileResource(jpeg_image->filename); - image->quality=minimum-1; + quality=minimum-1; jpeg_image=DestroyImage(jpeg_image); } jpeg_info=DestroyImageInfo(jpeg_info); } - quality=92; if ((image_info->compression != LosslessJPEGCompression) && (image->quality <= 100)) {