Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#204 FreeImage 3.5.2 is broken on 64bit Unix

None
closed
Hervé Drolon
None
5
2013-01-09
2012-03-01
Christian Heimes
No

FreeImage 3.5.2 doesn't work at all on 64bit Unix. It segfaults with an assertion message:

TIFFClientOpen: Assertion `sizeof(tmsize_t)==sizeof(void*)

This is another severe regression.

The bug is caused by an erroneous tiffconf.h. The file contains configuration values that are only valid for Windows. For example TIFF_SSIZE_T is defined as signed int for all Unix platforms although it must be a signed long int on all 64bit Unix platforms. The update to TIFF4 may even re-introduce a bug that I have fixed for 3.14.0 (fixed saving of G3 & G4 compressed TIFF with 1bpp on 64bit Linux)

/ Signed size type /

if defined(_WIN64)

define TIFF_SSIZE_T signed __int64

else

define TIFF_SSIZE_T signed int

endif

Solution: Don't ship hardcoded configuration files instead use the configure scripts.

Discussion

  • Hervé Drolon
    Hervé Drolon
    2012-03-03

    See the CVS:
    the LibTIFF4 config has been fixed regarding tmsize_t and G3/G4 behavior

     
  • Thanks, the test suite is now passing. I'll test your fix with our app next week and contact you again.

     
  • The code in CVS compiles and works fine except for issue #3498868. G3/G4 compressed TIFF images are ok, too.

    Thanks again!

     
  • Hervé Drolon
    Hervé Drolon
    2012-03-11

    OK, good news and many thanks for your help !
    I change the status to 'pending' then.
    Hervé

     
  • Hervé Drolon
    Hervé Drolon
    2013-01-09

    • status: pending --> closed
    • milestone: -->