[Pkg-phototools-devel] Bug#742451: Bug#742451: pngquant aborts everytime

VA bugs at indigo.re
Mon Mar 24 18:51:39 UTC 2014


I'm using sid on i386.
The problem seems to be in the debian build:

/tmp % apt-get source pngquant
[snip]
/tmp % cd pngquant-2.0.1
/tmp/pngquant-2.0.1 % ./debian/rules build
dh build
   dh_testdir
   dh_auto_configure
   dh_auto_build
make[1]: Entering directory `/tmp/pngquant-2.0.1'
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -D_FORTIFY_SOURCE=2  -c -o pngquant.o
pngquant.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -D_FORTIFY_SOURCE=2  -c -o rwpng.o rwpng.c
make -C lib -w static
make[2]: Entering directory `/tmp/pngquant-2.0.1/lib'
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
pam.o pam.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
mediancut.o mediancut.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
blur.o blur.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
mempool.o mempool.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
viter.o viter.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
nearest.o nearest.c
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat
-Werror=format-security -std=c99  -std=c99  -D_FORTIFY_SOURCE=2  -c -o
libimagequant.o libimagequant.c
ar rv libimagequant.a pam.o mediancut.o blur.o mempool.o viter.o
nearest.o libimagequant.o
ar: creating libimagequant.a
a - pam.o
a - mediancut.o
a - blur.o
a - mempool.o
a - viter.o
a - nearest.o
a - libimagequant.o
make[2]: Leaving directory `/tmp/pngquant-2.0.1/lib'
gcc pngquant.o rwpng.o -Wl,-z,relro -lpng -lz -lm lib/libimagequant.a
-lm    -o pngquant
make[1]: Leaving directory `/tmp/pngquant-2.0.1'
   dh_auto_test
/tmp/pngquant-2.0.1 % convert rose: rose.png
/tmp/pngquant-2.0.1 % ./pngquant 256 rose.png
pngquant: mempool.c:40: mempool_create: Assertion `!((uintptr_t)(*mptr +
(*mptr)->used) & 15UL)' failed.
zsh: abort      ./pngquant 256 rose.png
/tmp/pngquant-2.0.1 %



Using the vanilla Makefile, it works:

% apt-get source pngquant
[snip]
/tmp % cd pngquant-2.0.1
/tmp/pngquant-2.0.1 % make
gcc -Wall -Wno-unknown-pragmas -I. -I../libpng -I../zlib
-I/usr/local/include/ -I/usr/include/ -I/usr/X11/include/ -DNDEBUG -O3
-fstrict-aliasing -ffast-math -funroll-loops -fomit-frame-pointer
-ffinite-math-only -std=c99    -c -o pngquant.o pngquant.c
gcc -Wall -Wno-unknown-pragmas -I. -I../libpng -I../zlib
-I/usr/local/include/ -I/usr/include/ -I/usr/X11/include/ -DNDEBUG -O3
-fstrict-aliasing -ffast-math -funroll-loops -fomit-frame-pointer
-ffinite-math-only -std=c99    -c -o rwpng.o rwpng.c
make -C lib - static
make[1]: Entering directory `/tmp/pngquant-2.0.1/lib'
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o pam.o pam.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o mediancut.o mediancut.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o blur.o blur.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o mempool.o mempool.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o viter.o viter.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o nearest.o nearest.c
gcc -Wall -Wno-unknown-pragmas -I. -DNDEBUG -O3 -fstrict-aliasing
-ffast-math -funroll-loops -fomit-frame-pointer -ffinite-math-only
-std=c99    -c -o libimagequant.o libimagequant.c
ar rv libimagequant.a pam.o mediancut.o blur.o mempool.o viter.o
nearest.o libimagequant.o
ar: creating libimagequant.a
a - pam.o
a - mediancut.o
a - blur.o
a - mempool.o
a - viter.o
a - nearest.o
a - libimagequant.o
make[1]: Leaving directory `/tmp/pngquant-2.0.1/lib'
gcc pngquant.o rwpng.o -L../libpng -L../zlib -L/usr/local/lib/
-L/usr/lib/ -L/usr/X11/lib/ -lpng -lz -lm lib/libimagequant.a -lm    -o
pngquant
/tmp/pngquant-2.0.1 % convert rose: rose.png
/tmp/pngquant-2.0.1 % ./pngquant 256 rose.png
/tmp/pngquant-2.0.1 %

Le 24/03/2014 16:10, Andreas Tille a écrit :
> Hi,
> 
> unfortunately I can not reproduce this problem:
> 
> $ convert rose: rose.png
> $ pngquant 256 rose.png
> $ LANG=C ls -l rose*
> -rw-r--r-- 1 tillea admin 3717 Mar 24 16:13 rose-fs8.png
> -rw-r--r-- 1 tillea admin 7009 Mar 24 16:12 rose.png
> $ pngquant --version
> 2.0.1 (September 2013)
> 
> The resulting image looks fine.
> 
> The test was done on an amd64 machine with recent testing.
> 
> Kind regards
> 
>        Andreas.
> 
> On Sun, Mar 23, 2014 at 10:07:14PM +0100, VA wrote:
>> Package: pngquant
>> Version: 2.0.1-1
>>
>> Everytime I run pngquant, it immediately aborts. Here's a sample session
>> where I generate an image with ImageMagick:
>>
>> % convert rose: rose.png
>> % pngquant 256 rose.png
>> pngquant: mempool.c:40: mempool_create: Assertion `!((uintptr_t)(*mptr +
>> (*mptr)->used) & 15UL)' failed.
>> zsh: abort      pngquant 256 rose.png
>>
>> _______________________________________________
>> Pkg-phototools-devel mailing list
>> Pkg-phototools-devel at lists.alioth.debian.org
>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-phototools-devel
>>
> 



More information about the Pkg-phototools-devel mailing list