--- gdk-pixbuf/io-jpeg.c.orig 2009-07-23 23:21:25.000000000 +0200 +++ gdk-pixbuf/io-jpeg.c 2009-07-24 02:05:07.000000000 +0200 @@ -922,13 +922,14 @@ } } - for (cinfo->scale_denom = 2; cinfo->scale_denom <= 8; cinfo->scale_denom *= 2) { + cinfo->scale_num = 8; + for (cinfo->scale_denom = 2; cinfo->scale_denom <= 16; cinfo->scale_denom += 1) { jpeg_calc_output_dimensions (cinfo); if (cinfo->output_width < width || cinfo->output_height < height) { - cinfo->scale_denom /= 2; break; } } + cinfo->scale_denom -= 1; jpeg_calc_output_dimensions (cinfo); context->pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,