Bug#735847: freeimage: builds wrong tiff, broken 32 bit
Package: freeimage
Version: 3.15.4
Severity: serious
the recent update to .4 updates the internal tiff to libtiff4 but does
not update the debian patch
debian/patches/disable_embedded_libraries.patch appropriately.
This leads to some internals using the libtiff internals instead of the
libtiff4
This breaks e.g. the skimage tests with a expected segfault due to
complete data structure corruption.
Additionally LibTIFF4/tiffconf.h is configured for 32 bit and will most
likely break on 32 bit:
/* Signed 64-bit type */
#ifdef _MSC_VER
#define TIFF_INT64_T signed __int64
#else
#define TIFF_INT64_T signed long
#endif // _MSC_VER
...
long is 32 bit on 32 bit arches. it needs to be int64_t or long long.
This occurs several times in the file.
Fixing all this still lets the skimage tests fail:
FAIL: test_freeimage.test_metadata
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/usr/lib/python2.7/dist-packages/numpy/testing/decorators.py",
line 146, in skipper_func
return f(*args, **kwargs)
File "/tmp/buildd/skimage-0.9.3/skimage/io/tests/test_freeimage.py",
line 104, in test_metadata
assert meta[1][('EXIF_MAIN', 'Software')].startswith('ImageMagick')
AssertionError:
it truncates the tag to just 'I'
I'm not sure if that what the reason for that could be.
Reply to: