RE: Regarding Debian Bug report logs - #650488

2012-08-05 Thread Deniz Eren

The latest debian build for h5utils seems to work fine now with libpng1.4. 
However there are problems with libpng1.5. Any plans to upgrading to support 
libpng1.5?

From: deniz.e...@live.com.au
To: pkg-grass-devel@lists.alioth.debian.org; 650...@bugs.debian.org
Subject: Regarding Debian Bug report logs - #650488
Date: Sun, 17 Jun 2012 00:13:23 +1030





Hi,

I've run into crash problems with h5utils program h5topng. I've read the bug 
report thread #650488 and am using h5utils 1.12.1-2 on Ubuntu 12.04 desktop 
with kernel 3.2.0-25-generic-pae.

The crash occurs on line 443 of writepng.c which is:

 /* if you malloced the palette, free it here */
#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
 png_free(png_ptr, palette);
 palette = NULL;
#else
 free(info_ptr->palette);
#endif

The problem is with calling png_free on line 443 because there is no check for 
whether or not the palette was malloced. In the function writepng where the 
malloc occurs the value of 'eight_bit' is checked; if 'eight_bit' is true then 
the palette is malloced.

Therefore the same 'eight_bit' needs to be checked on line 443 before png_free 
is called. When I apply this change the crash problem is fixed.
The fix should be:

 /* if you malloced the palette, free it here */
#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
 if (eight_bit) {
  png_free(png_ptr, palette);
 }

 palette = NULL;
#else
 free(info_ptr->palette);
#endif

Can you please review my suggestion and let me know what you think?



Best regards,
Deniz Eren


  ___
Pkg-grass-devel mailing list
Pkg-grass-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

Regarding Debian Bug report logs - #650488

2012-06-16 Thread Deniz Eren

Hi,

I've run into crash problems with h5utils program h5topng. I've read the bug 
report thread #650488 and am using h5utils 1.12.1-2 on Ubuntu 12.04 desktop 
with kernel 3.2.0-25-generic-pae.

The crash occurs on line 443 of writepng.c which is:

 /* if you malloced the palette, free it here */
#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
 png_free(png_ptr, palette);
 palette = NULL;
#else
 free(info_ptr->palette);
#endif

The problem is with calling png_free on line 443 because there is no check for 
whether or not the palette was malloced. In the function writepng where the 
malloc occurs the value of 'eight_bit' is checked; if 'eight_bit' is true then 
the palette is malloced.

Therefore the same 'eight_bit' needs to be checked on line 443 before png_free 
is called. When I apply this change the crash problem is fixed.
The fix should be:

 /* if you malloced the palette, free it here */
#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
 if (eight_bit) {
  png_free(png_ptr, palette);
 }

 palette = NULL;
#else
 free(info_ptr->palette);
#endif

Can you please review my suggestion and let me know what you think?



Best regards,
Deniz Eren

  ___
Pkg-grass-devel mailing list
Pkg-grass-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel