Bug#638812: whitedune: FTBFS with libpng 1.5

Joerg Scheurich aka MUFTI rusmufti at helpdesk.bera.rus.uni-stuttgart.de
Mon Sep 5 09:32:30 UTC 2011


Hi,

I am only the "upstream" of white_dune, not the debian maintainer...

> I noticed your package FTBFS by libpng 1.5.
> I created the patch that revise this problem.
> Could you check and apply this patch?

... but instead of using 

  #if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
    if (setjmp(png_jmpbuf((png_ptr))))
  #else
    if (setjmp(png_ptr->jmpbuf))
  #endif

i think it would be better to use

  /* The png_jmpbuf() macro, used in error handling, became available in
   * libpng version 1.0.6.   If you want to be able to run your code with older
   * versions of libpng, you must define the macro yourself (but only if it
   * is not already defined by libpng!).
   */
 
   #ifndef png_jmpbuf
   #define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
   #endif
...
    if (setjmp(png_jmpbuf((png_ptr))))

accordingly to 

http://www.exploit-db.com/exploits/393/

This compiles and runs at least with libpng version 1.5.4/libpng12-dev 
1.2.44-1+squeeze1 and will be part of the next development versions of 
white_dune.

BTW: the lines

   #ifndef png_jmpbuf
   #define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
   #endif

could be also part of a header file belonging to the libpng15-dev, 
e.g. something like "pnglegacy.h" (cc to Greg Roelofs)

so long
MUFTI
-- 
But apart from Photoshop, I can't think of desktop applications where 
you would need more than 4 gigabytes of physical memory,
                   (William Henry Gates III in year 2003)





More information about the pkg-multimedia-maintainers mailing list