]> granicus.if.org Git - libjpeg-turbo/commitdiff
Fix error w/ lossless crop & libjpeg v7 emulation
authorDRC <information@libjpeg-turbo.org>
Thu, 19 Jan 2017 23:50:59 +0000 (17:50 -0600)
committerDRC <information@libjpeg-turbo.org>
Fri, 20 Jan 2017 00:41:13 +0000 (18:41 -0600)
The JPEG_LIB_VERSION #ifdef in jtransform_adjust_parameters() was
incorrect, which caused a "Bogus virtual array access" error when
attempting to use the lossless crop feature.

Introduced in c04bd3cc97f44fd9030de1e141754c8775d4e5a5.

This also adds libjpeg v7 API/ABI emulation to the Travis CI tests.

.travis.yml
ChangeLog.md
transupp.c

index 49656d80e1573ed749051a74c3749bc302cf643c..53ded2b9502b90a83c705233fe02985790b3c7ce 100644 (file)
@@ -23,6 +23,13 @@ matrix:
     - os: linux
       compiler: gcc
       env: CONFIGURE_FLAGS="--with-12bit"
+    - os: linux
+      compiler: gcc
+      env: CONFIGURE_FLAGS="--with-jpeg7"
+      addons:
+        apt:
+          packages:
+            - nasm
     - os: linux
       compiler: gcc
       env: CONFIGURE_FLAGS="--with-jpeg8"
index 93b668784dce45b991d7dfe3d7c00dcc2e86c779..59ae7f90afbc6859b801212845f6dc9958b2a7ef 100644 (file)
@@ -22,6 +22,12 @@ source/destination managers.  Due to an oversight, the `jpeg_skip_scanlines()`
 and `jpeg_crop_scanlines()` functions were not being included in jpeg7.dll when
 libjpeg-turbo was built with `-DWITH_JPEG7=1` and `-DWITH_MEMSRCDST=1`.
 
+6. Fixed "Bogus virtual array access" error that occurred when using the
+lossless crop feature in jpegtran or the TurboJPEG API, if libjpeg-turbo was
+built with libjpeg v7 API/ABI emulation.  This was apparently a long-standing
+bug that has existed since the introduction of libjpeg v7/v8 API/ABI emulation
+in libjpeg-turbo v1.1.
+
 
 1.5.1
 =====
index d1c56c60ab7d652a76798002b3d74fb435c55b67..0d915ef60d1d91db945d0d60cada1eae9739ece6 100644 (file)
@@ -4,7 +4,7 @@
  * This file was part of the Independent JPEG Group's software:
  * Copyright (C) 1997-2011, Thomas G. Lane, Guido Vollbeding.
  * libjpeg-turbo Modifications:
- * Copyright (C) 2010, D. R. Commander.
+ * Copyright (C) 2010, 2017, D. R. Commander.
  * For conditions of distribution and use, see the accompanying README.ijg
  * file.
  *
@@ -1384,7 +1384,7 @@ jtransform_adjust_parameters (j_decompress_ptr srcinfo,
   /* Correct the destination's image dimensions as necessary
    * for rotate/flip, resize, and crop operations.
    */
-#if JPEG_LIB_VERSION >= 70
+#if JPEG_LIB_VERSION >= 80
   dstinfo->jpeg_width = info->output_width;
   dstinfo->jpeg_height = info->output_height;
 #endif
@@ -1395,14 +1395,14 @@ jtransform_adjust_parameters (j_decompress_ptr srcinfo,
   case JXFORM_TRANSVERSE:
   case JXFORM_ROT_90:
   case JXFORM_ROT_270:
-#if JPEG_LIB_VERSION < 70
+#if JPEG_LIB_VERSION < 80
     dstinfo->image_width = info->output_height;
     dstinfo->image_height = info->output_width;
 #endif
     transpose_critical_parameters(dstinfo);
     break;
   default:
-#if JPEG_LIB_VERSION < 70
+#if JPEG_LIB_VERSION < 80
     dstinfo->image_width = info->output_width;
     dstinfo->image_height = info->output_height;
 #endif