[Digikam-devel] [CRASH] writing a png crashs digikam-SVN

Marcel Wiesweg marcel.wiesweg at gmx.de
Fri Dec 22 15:14:02 GMT 2006


> As the problem still exists - and still in digiKam only I collect new
> infos.
>
> When I interrupt the session before digikam crashs I have this threading
> info:
>
> Program received signal SIGINT, Interrupt.
> [Switching to Thread -1245165904 (LWP 25514)]
> 0xffffe410 in __kernel_vsyscall ()
> (gdb) info threads
>   4 Thread -1255158880 (LWP 25528)  0xb60d741d in png_save_uint_16 ()
>
> >from /usr/lib/libpng12.so.0
>
>   3 Thread -1255158880 (LWP 25528)  0xb60d741d in png_save_uint_16 ()
>
> >from /usr/lib/libpng12.so.0
>
> * 1 Thread -1245165904 (LWP 25514)  0xffffe410 in __kernel_vsyscall ()
>
> For what are the two threads necessary? Is libpng in this case threadsafe?

libpng should be reentrant, but the real question is, why are two threads 
doing (the same?) save operation? This is very strange, the bt's from thread 
3 and 4 are indentical, the thread ids are identical. Something broken in 
GDB?

To verify with debug messages, you can outcomment line 24 at the top of 
pngloader.cpp:
#define ENABLE_DEBUG_MESSAGES 

Marcel



More information about the Digikam-devel mailing list