Summary: | media-gfx/xv-3.10a-r15: crash after png_free_default() | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Martin Mokrejš <mmokrejs> |
Component: | Current packages | Assignee: | Joe Peterson (RETIRED) <lavajoe> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | CC: | transacid |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Martin Mokrejš
2011-05-02 22:14:30 UTC
Please post the output of `emerge -vpq libpng'. [ebuild U ] media-libs/libpng-1.4.7 [1.4.5] USE="static-libs -apng%" Can you get it to happen without "static-libs" set on libpng? What about with "apng"? Also, can you give some more detail on exactly how you got it to crash? When were you hitting enter (i.e. after the image was being displayed), and in what window? I pres enter in the image window (not in the management menu window, that one was sent into the background using mouse right click). So I tried: USE=apng emerge xv [cut] i686-pc-linux-gnu-gcc -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fno-strict-aliasing -ggdb -DUSE_GETCWD -DLINUX -DUSLEEP -DDOJPEG -DDOPNG -DDOTIFF -DUSE_TILED_TIFF_BOTLEFT_FIX -I/usr/include -DDOPDS -DMGCSFXDIR=\"/var/tmp/portage/media-gfx/xv-3.10a-r15/temp\" -DDOCDIR=\"/usr/share/doc/xv-3.10a-r15\" -DSYSCONFDIR=\"/etc\" -DXVEXECPATH=\"/var/tmp/portage/media-gfx/xv-3.10a-r15/temp\" -Wl,-O1 -Wl,--as-needed -o xv xv.o xvevent.o xvroot.o xvmisc.o xvimage.o xvcolor.o xvsmooth.o xv24to8.o xvgif.o xvpm.o xvinfo.o xvctrl.o xvscrl.o xvalg.o xvgifwr.o xvdir.o xvbutt.o xvpbm.o xvxbm.o xvgam.o xvbmp.o xvdial.o xvgraf.o xvsunras.o xvjpeg.o xvps.o xvpopup.o xvdflt.o xvtiff.o xvtiffwr.o xvpds.o xvrle.o xviris.o xvgrab.o vprintf.o xvbrowse.o xvtext.o xvpcx.o xviff.o xvtarga.o xvxpm.o xvcut.o xvxwd.o xvfits.o xvpng.o xvzx.o xvwbmp.o xvpcd.o xvhips.o xvmag.o xvpic.o xvmaki.o xvpi.o xvpic2.o xvvd.o xvmgcsfx.o xvml.o xvjp2k.o -L/usr/lib -lz -L/usr/X11R6/lib -lX11 -lm -ljpeg -lz -lpng -ltiff # ldd /usr/bin/xv linux-gate.so.1 => (0xffffe000) libz.so.1 => /lib/libz.so.1 (0xb773c000) libX11.so.6 => /usr/lib/libX11.so.6 (0xb7625000) libm.so.6 => /lib/libm.so.6 (0xb75ff000) libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0xb75c4000) libpng14.so.14 => /usr/lib/libpng14.so.14 (0xb759f000) libtiff.so.5 => /usr/lib/libtiff.so.5 (0xb7538000) libc.so.6 => /lib/libc.so.6 (0xb73de000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb73c4000) libdl.so.2 => /lib/libdl.so.2 (0xb73c0000) /lib/ld-linux.so.2 (0xb7784000) libjbig.so => /usr/lib/libjbig.so (0xb73b3000) libXau.so.6 => /usr/lib/libXau.so.6 (0xb73af000) libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb73a9000) # That gives me a not working binary altogether: $ /usr/bin/xv file.png Segmentation fault (core dumped) $ with a *different* stracktrace (gdb) where #0 _xcb_map_remove (list=0x828d9c0, key=2771) at xcb_list.c:89 #1 0xb7363afe in poll_for_reply (c=0x828dc40, request=<value optimized out>, reply=0xbfd726ec, error=0xbfd7274c) at xcb_in.c:297 #2 0xb7363f17 in xcb_wait_for_reply (c=0x828dc40, request=2771, e=0xbfd7274c) at xcb_in.c:377 #3 0xb75f4b85 in _XReply (dpy=0x828d018, rep=0xbfd72790, extra=0, discard=1) at xcb_io.c:533 #4 0xb75da425 in XAllocColor (dpy=0x828d018, cmap=32, def=0xbfd72840) at GetHColor.c:48 #5 0x080671ec in screen_init (pic24=0xb70fe008 '?' <repeats 200 times>..., wide=1123, high=666) at xvimage.c:140 #6 Pic24ToXImage (pic24=0xb70fe008 '?' <repeats 200 times>..., wide=1123, high=666) at xvimage.c:2190 #7 0x08068db9 in CreateXImage () at xvimage.c:1735 #8 0x080519a0 in openPic (filenum=0) at xv.c:2917 #9 0x0805303d in openFirstPic () at xv.c:3657 #10 mainLoop () at xv.c:3776 #11 0x08055fe0 in main (argc=2, argv=0xbfd73864) at xv.c:1037 (gdb) bt full #0 _xcb_map_remove (list=0x828d9c0, key=2771) at xcb_list.c:89 cur = 0x828d9c0 #1 0xb7363afe in poll_for_reply (c=0x828dc40, request=<value optimized out>, reply=0xbfd726ec, error=0xbfd7274c) at xcb_in.c:297 head = <value optimized out> #2 0xb7363f17 in xcb_wait_for_reply (c=0x828dc40, request=2771, e=0xbfd7274c) at xcb_in.c:377 cond = {__data = {__lock = 0, __futex = 0, __total_seq = 0, __wakeup_seq = 0, __woken_seq = 0, __mutex = 0x0, __nwaiters = 0, __broadcast_seq = 0}, __size = '\000' <repeats 47 times>, __align = 0} reader = {request = 2771, data = 0xbfd726b0, next = 0x0} prev_reader = <value optimized out> widened_request = <value optimized out> ret = 0x0 #3 0xb75f4b85 in _XReply (dpy=0x828d018, rep=0xbfd72790, extra=0, discard=1) at xcb_io.c:533 error = 0x0 c = 0x828dc40 current = <value optimized out> __PRETTY_FUNCTION__ = "_XReply" #4 0xb75da425 in XAllocColor (dpy=0x828d018, cmap=32, def=0xbfd72840) at GetHColor.c:48 status = <value optimized out> rep = {type = 0 '\000', pad1 = 0 '\000', sequenceNumber = 0, length = 1, red = 37828, green = 2066, blue = 0, pad2 = 0, pixel = 3076268176, pad3 = 0, pad4 = 135476832, pad5 = 3218548800} #5 0x080671ec in screen_init (pic24=0xb70fe008 '?' <repeats 200 times>..., wide=1123, high=666) at xvimage.c:140 check_map = 23069562 check_col = {pixel = 1123, red = 0, green = 0, blue = 0, flags = -41 '\327', pad = -65 '\277'} ci = <value optimized out> i = <value optimized out> init_flag = 1 check_gc = 0x829ef20 check_image = <value optimized out> #6 Pic24ToXImage (pic24=0xb70fe008 '?' <repeats 200 times>..., wide=1123, high=666) at xvimage.c:2190 xcol = <value optimized out> imagedata = 0xb6e23008 "" lip = <value optimized out> pp = <value optimized out> bperpix = 32 bperline = 4492 ip = <value optimized out> i = <value optimized out> j = <value optimized out> xim = 0x829edd8 #7 0x08068db9 in CreateXImage () at xvimage.c:1735 No locals. ---Type <return> to continue, or q <return> to quit--- #8 0x080519a0 in openPic (filenum=0) at xv.c:2917 pinfo = {pic = 0xb70fe008 '?' <repeats 200 times>..., w = 1123, h = 666, type = 1, r = '\000' <repeats 255 times>, g = '\000' <repeats 255 times>, b = '\000' <repeats 255 times>, normw = 1123, normh = 666, frmType = 0, colType = 0, fullInfo = "PNG, 24 bit truecolor, non-interlaced. (125056 bytes)", '\000' <repeats 74 times>, shrtInfo = "1123x666 PNG", '\000' <repeats 115 times>, comment = 0x828d9b0 "Comment::Created with GIMP\n", exifInfo = 0x0, exifInfoSize = 0, numpages = 1, pagebname = '\000' <repeats 63 times>} i = <value optimized out> filetype = <value optimized out> freename = 1 frompipe = 0 frompoll = 0 fromint = 0 killpage = <value optimized out> oldeWIDE = 0 oldeHIGH = 0 oldpWIDE = 0 oldpHIGH = 0 oldCXOFF = 0 oldCYOFF = 0 oldCWIDE = 0 oldCHIGH = 0 wascropped = 0 tmp = <value optimized out> fullname = 0x829eea8 "/home/xxx/file.png" filename = "/home/xxx/file.png\000\000$$$$HHHHmmmm\221\221\221\221\266\266\266\266\332\332\332\332\377\377\377\377\000\000\000\000$$$$HHHHmmmm\221\221\221\221\266\266\266\266\332\332\332\332\377\377\377\377\000\000\000\000$$$$HHHHmmmm\221\221\221\221\266\266\266\266\332\332\332\332\377\377\377\377\000\000\000\000$$$$HHHHmmmm\221\221\221\221\266\266\266\266\332\332\332\332\377\377\377\377\000\000\000\000$$$$HHHHmmmm\221\221\221\221\266\266\266\266\332\332\332\332\377\377\377\377", '\000' <repeats 32 times>, '$' <repeats 32 times>... #9 0x0805303d in openFirstPic () at xv.c:3657 i = 0 #10 mainLoop () at xv.c:3776 i = <value optimized out> #11 0x08055fe0 in main (argc=2, argv=0xbfd73864) at xv.c:1037 i = <value optimized out> ecdef = {pixel = 9148853, red = 35584, green = 39168, blue = 46336, flags = 7 '\a', pad = -65 '\277'} rootReturn = 125 parentReturn = 0 children = 0x829cfa8 numChildren = 75 rootDEEP = <value optimized out> (gdb) (In reply to comment #4) > I pres enter in the image window (not in the management menu window, that one > was sent into the background using mouse right click). > > So I tried: > > USE=apng emerge xv And anyway, the apng USE flag was meant for libpng, so the below test proved nothing. > $ /usr/bin/xv file.png > Segmentation fault (core dumped) > $ > > with a *different* stracktrace > > (gdb) where > #0 _xcb_map_remove (list=0x828d9c0, key=2771) at xcb_list.c:89 > #1 0xb7363afe in poll_for_reply (c=0x828dc40, request=<value optimized out>, > reply=0xbfd726ec, error=0xbfd7274c) at xcb_in.c:297 > #2 0xb7363f17 in xcb_wait_for_reply (c=0x828dc40, request=2771, e=0xbfd7274c) > at xcb_in.c:377 > #3 0xb75f4b85 in _XReply (dpy=0x828d018, rep=0xbfd72790, extra=0, discard=1) > at xcb_io.c:533 > #4 0xb75da425 in XAllocColor (dpy=0x828d018, cmap=32, def=0xbfd72840) at > GetHColor.c:48 > #5 0x080671ec in screen_init (pic24=0xb70fe008 '?' <repeats 200 times>..., > wide=1123, high=666) at xvimage.c:140 > #6 Pic24ToXImage (pic24=0xb70fe008 '?' <repeats 200 times>..., wide=1123, > high=666) at xvimage.c:2190 > #7 0x08068db9 in CreateXImage () at xvimage.c:1735 > #8 0x080519a0 in openPic (filenum=0) at xv.c:2917 > #9 0x0805303d in openFirstPic () at xv.c:3657 > #10 mainLoop () at xv.c:3776 > #11 0x08055fe0 in main (argc=2, argv=0xbfd73864) at xv.c:1037 > (gdb) Sorry, that I already reported elsewhere, I forgot I was getting two, different stacktraces from xv. https://bugs.freedesktop.org/show_bug.cgi?id=36716 So now, have recompile libpng with apng set, recompiled xv: xv crashed on the [enter] key: (gdb) where #0 0xffffe424 in __kernel_vsyscall () #1 0xb74da6f1 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0xb74dbe32 in abort () at abort.c:92 #3 0xb7515b85 in __libc_message (do_abort=2, fmt=0xb75e6fa0 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:186 #4 0xb751ba41 in malloc_printerr (action=<value optimized out>, str=0x6 <Address 0x6 out of bounds>, ptr=0x829e388) at malloc.c:6283 #5 0xb751d2c0 in _int_free (av=<value optimized out>, p=<value optimized out>) at malloc.c:4795 #6 0xb75203ad in __libc_free (mem=0x829e388) at malloc.c:3738 #7 0x08067c20 in KillOldPics () at xvimage.c:1465 #8 0x080515cc in openPic (filenum=0) at xv.c:2611 #9 0x08053125 in mainLoop () at xv.c:3813 #10 0x08055fe0 in main (argc=2, argv=0xbf881754) at xv.c:1037 (gdb) bt full #0 0xffffe424 in __kernel_vsyscall () No symbol table info available. #1 0xb74da6f1 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 resultvar = <value optimized out> pid = -1218420748 selftid = 8859 #2 0xb74dbe32 in abort () at abort.c:92 act = {__sigaction_handler = {sa_handler = 0xb78774c4 <_rtld_local+1220>, sa_sigaction = 0xb78774c4 <_rtld_local+1220>}, sa_mask = {__val = {4293984256, 136889680, 134521892, 3213361368, 4266, 3213361336, 134516868, 3213361180, 4, 3213361264, 3075958129, 14, 136889680, 3213361264, 3076546548, 9, 3213362724, 3213361384, 3076069412, 4, 3213361264, 4, 0, 3213361360, 3213361372, 2, 3076406505, 3076406501, 3076402049, 3076402075, 230, 3213361264}}, sa_flags = -1081605960, sa_restorer = 0xb75e5039} sigs = {__val = {32, 0 <repeats 31 times>}} #3 0xb7515b85 in __libc_message (do_abort=2, fmt=0xb75e6fa0 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:186 ap = <value optimized out> fd = -1081605600 on_2 = <value optimized out> list = <value optimized out> nlist = <value optimized out> cp = <value optimized out> written = false #4 0xb751ba41 in malloc_printerr (action=<value optimized out>, str=0x6 <Address 0x6 out of bounds>, ptr=0x829e388) at malloc.c:6283 buf = "0829e388" cp = <value optimized out> #5 0xb751d2c0 in _int_free (av=<value optimized out>, p=<value optimized out>) at malloc.c:4795 size = 16 nextchunk = 0x229b nextsize = 136965768 prevsize = <value optimized out> bck = <value optimized out> fwd = <value optimized out> errstr = 0x6 <Address 0x6 out of bounds> __func__ = "_int_free" #6 0xb75203ad in __libc_free (mem=0x829e388) at malloc.c:3738 ar_ptr = 0xb76073a0 p = 0x6 #7 0x08067c20 in KillOldPics () at xvimage.c:1465 No locals. #8 0x080515cc in openPic (filenum=0) at xv.c:2611 pinfo = {pic = 0xb6d3c008 '?' <repeats 200 times>..., w = 1123, h = 666, type = 1, r = '\000' <repeats 255 times>, g = '\000' <repeats 255 times>, b = '\000' <repeats 255 times>, normw = 1123, normh = 666, frmType = 0, colType = 0, fullInfo = "PNG, 24 bit truecolor, non-interlaced. (125056 bytes)", '\000' <repeats 74 times>, shrtInfo = "1123x666 PNG", '\000' <repeats 115 times>, ---Type <return> to continue, or q <return> to quit--- comment = 0x829f500 "Comment::Created with GIMP\n", exifInfo = 0x0, exifInfoSize = 0, numpages = 1, pagebname = '\000' <repeats 63 times>} i = <value optimized out> filetype = <value optimized out> freename = 1 frompipe = 0 frompoll = 0 fromint = 0 killpage = <value optimized out> oldeWIDE = 1123 oldeHIGH = 666 oldpWIDE = 0 oldpHIGH = 0 oldCXOFF = 0 oldCYOFF = 0 oldCWIDE = 0 oldCHIGH = 0 wascropped = 0 tmp = <value optimized out> fullname = 0x82a1be0 "/home/xxx/file.png" filename = "/home/xxx/file.png\000\b\000\000\000\000\000\000\000\000\370\023\210\277\260І\267\000\000\000\000\364߀\267\030\320(\b\t\000\000\000\370\023\210\277\214bs\267\030\320(\b\200\024\210\277\000\000\000\000\000\240o\267\300:p\267\364߀\267\370\023\210\277.Xs\267\030\320(\b\034\363)\b\000\000\000\000\364߀\267|\363)\b\340\024\210\277\070\024\210\277\\>r\267\030\320(\b\200\024\210\277\030\363)\b\000\000\000\000\200\364)\b\r\000\000\000\000\000\000\000\001\000\000\000X"... #9 0x08053125 in mainLoop () at xv.c:3813 j = <value optimized out> i = <value optimized out> #10 0x08055fe0 in main (argc=2, argv=0xbf881754) at xv.c:1037 i = <value optimized out> ecdef = {pixel = 9148853, red = 35584, green = 39168, blue = 46336, flags = 7 '\a', pad = -65 '\277'} rootReturn = 125 parentReturn = 0 children = 0x829d020 numChildren = 105 rootDEEP = <value optimized out> (gdb) First, very strange that emerging xv with apng causes different behavior, since xv does not use apng... But what I am particularly interested in is having you emerge libpng without static-libs: USE="apng -static-libs" emerge -1 libpng I am not sure why you have static-libs set, anyway. Not sure if this is the same problem, but marking this as a duplicate, since there are still issues with png images crashing. Also, there is a newer version (r16) -please try this before reopening this issue as separate. *** This bug has been marked as a duplicate of bug 376211 *** |