diff options
author | dholland <dholland> | 2009-08-27 09:18:06 +0000 |
---|---|---|
committer | dholland <dholland> | 2009-08-27 09:18:06 +0000 |
commit | 4e27d8736acfdeea84dfb0a18818db07b7f02265 (patch) | |
tree | 473fa8b2d284faa170bd7c7b86eea3dd1373317f /graphics/netpbm/patches | |
parent | c1aa85bb733f47eed53f68a7cee8f8c77d7919f1 (diff) | |
download | pkgsrc-4e27d8736acfdeea84dfb0a18818db07b7f02265.tar.gz |
Add upstream patch to fix build with new jpeg. Thanks to obache@ for
tracking it down. Fixes PR 41947.
Diffstat (limited to 'graphics/netpbm/patches')
-rw-r--r-- | graphics/netpbm/patches/patch-ba | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/graphics/netpbm/patches/patch-ba b/graphics/netpbm/patches/patch-ba new file mode 100644 index 00000000000..b4dc83df842 --- /dev/null +++ b/graphics/netpbm/patches/patch-ba @@ -0,0 +1,61 @@ +$NetBSD: patch-ba,v 1.5 2009/08/27 09:18:06 dholland Exp $ + +Upstream patch to fix build with jpeg 7. + +--- converter/ppm/ppmtompeg/jpeg.c 2009/07/24 02:59:59 959 ++++ converter/ppm/ppmtompeg/jpeg.c 2009/07/31 02:21:47 960 +@@ -53,6 +53,17 @@ + #define HEADER_SIZE 607 /*JFIF header size used on output images*/ + + ++static int ++minDctVScaledSize(struct jpeg_decompress_struct const cinfo) { ++ ++#if JPEG_LIB_VERSION >= 70 ++ return cinfo.min_DCT_v_scaled_size; ++#else ++ return cinfo.min_DCT_scaled_size; ++#endif ++} ++ ++ + + /*=======================================================================* + * * +@@ -417,11 +428,7 @@ + */ + + /* set parameters for decompression */ +-#ifdef JPEG4 +- cinfo.want_raw_output = TRUE; +-#else + cinfo.raw_data_out = TRUE; +-#endif + cinfo.out_color_space = JCS_YCbCr; + + /* calculate image output dimensions */ +@@ -467,11 +474,7 @@ + /* Make an 8-row-high sample array that will go away when done + with image + */ +-#ifdef JPEG4 +- buffer_height = 8; /* could be 2, 4,8 rows high */ +-#else +- buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_scaled_size; +-#endif ++ buffer_height = cinfo.max_v_samp_factor * minDctVScaledSize(cinfo); + + for(cp=0,compptr = cinfo.comp_info;cp<cinfo.num_components; + cp++,compptr++) { +@@ -495,11 +498,7 @@ + + while (cinfo.output_scanline < cinfo.output_height) { + +-#ifdef JPEG4 +- (void) jpeg_read_raw_scanlines(&cinfo, scanarray, buffer_height); +-#else + (void) jpeg_read_raw_data(&cinfo, scanarray, buffer_height); +-#endif + + /* alter subsample ratio's if neccessary */ + if ((h_samp[0]==2) && (h_samp[1]==1) && (h_samp[2]==1) && |