Summary: | media-libs/libopenraw-0.0.9 - segmentation faults in OpenRaw::IO::MemStream::read (crashes gnome-base/nautilus) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Juergen Rose <rose> |
Component: | [OLD] GNOME | Assignee: | Freedesktop bugs <freedesktop-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 644572 | ||
Bug Blocks: | |||
Attachments: | nautilus gdb output |
Description
Juergen Rose
2012-10-19 09:35:16 UTC
After compiling gnome-desktop with debugging option, I get now the following output: rose@leopard:/home_leopard/rose(5)$ gdb nautilus GNU gdb (Gentoo 7.5 p1) 7.5 Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-pc-linux-gnu". For bug reporting instructions, please see: <http://bugs.gentoo.org/>... Reading symbols from /usr/bin/nautilus...done. (gdb) run Starting program: /usr/bin/nautilus warning: Could not load shared library symbols for linux-vdso.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". [New Thread 0x7fffe9f37700 (LWP 3089)] [New Thread 0x7fffe9736700 (LWP 3090)] [New Thread 0x7fffe8f35700 (LWP 3091)] [New Thread 0x7fffcadec700 (LWP 3092)] [New Thread 0x7fffca3e8700 (LWP 3093)] [New Thread 0x7fffc9be7700 (LWP 3094)] [New Thread 0x7fffec385700 (LWP 3095)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fffec385700 (LWP 3095)] 0x00007ffff4720e20 in ?? () from /lib64/libc.so.6 (gdb) bt f #0 0x00007ffff4720e20 in ?? () from /lib64/libc.so.6 No symbol table info available. #1 0x00007fffc8dc9547 in OpenRaw::IO::MemStream::read(void*, unsigned long) () from /usr/lib64/libopenraw.so.1 No symbol table info available. #2 0x00007fffc8db749e in OpenRaw::Internals::RawContainer::readInt16(OpenRaw::IO::Stream*, short&) () from /usr/lib64/libopenraw.so.1 No symbol table info available. #3 0x00007fffc8db99ad in OpenRaw::Internals::CIFF::Heap::_loadRecords() () from /usr/lib64/libopenraw.so.1 No symbol table info available. #4 0x00007fffc8db9ad8 in OpenRaw::Internals::CIFF::Heap::records() () from /usr/lib64/libopenraw.so.1 No symbol table info available. #5 0x00007fffc8dba006 in OpenRaw::Internals::CIFFContainer::getImageProps() () from /usr/lib64/libopenraw.so.1 No symbol table info available. #6 0x00007fffc8db1894 in OpenRaw::Internals::CRWFile::_getRawData(OpenRaw::RawData&, unsigned int) () from /usr/lib64/libopenraw.so.1 No symbol table info available. #7 0x00007fffc8da4401 in OpenRaw::RawFile::getRawData(OpenRaw::RawData&, unsigned int) () from /usr/lib64/libopenraw.so.1 No symbol table info available. #8 0x00007fffc8da4491 in OpenRaw::RawFile::getRenderedImage(OpenRaw::BitmapData&, unsigned int) () from /usr/lib64/libopenraw.so.1 No symbol table info available. #9 0x00007fffc8fdef39 in ?? () from /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libopenraw_pixbuf.so No symbol table info available. #10 0x00007ffff59a9044 in gdk_pixbuf_loader_close () from /usr/lib64/libgdk_pixbuf-2.0.so.0 No symbol table info available. #11 0x00007ffff77acbf2 in _gdk_pixbuf_new_from_uri_at_scale (uri=<optimized out>, width=<optimized out>, height=<optimized out>, preserve_aspect_ratio=1) at gnome-desktop-thumbnail.c:399 result = 1 buffer = "\242\202\005\065\242\230\351\356\260b\244\301\f\031!m\022B\267\rxtc\226,R,\220\235d\275\254\024\064\305\n#\320\376\271X\351\026Y\022zg\333\071\335Q;C\263Ut\332!\205\202\342Z\341\250\311B\312\246\210\227A\242\211+-I\222\222\326\004\330*4\351e\301R\322\363\061\244\307$f\f\245)\262j\003\064\023Fj\215\342Gr\345\213T\202\230\340\206\062v\017\336\070\353\236\314\021\310\301\271j\261\216S\232S5\f\365\033\205(\265h\f\204X\342E\022\070\317k\201)\367\213\244\353JM\205\004\327uX\337Z2GYR\344!\220:\230b\210\260]l\226\020\336]ycC\f\220e\265\322m\201)R^A\002e\355\213#m\025\032\230\177t\br\004D\372\233\065\220{.,\244m\204\036\265v\355.\264Z\030\024\236\344\240\n\020,\023\221 )\354\217\022\001\017:!g\265rJ17\"%\205MA\210Z\336\311d\253P\205\206\356\354U5\261\372`\030\360\035 \307Je\344e\005eMz\251\233`\300whE\213\n\256 \311\063T\312k\033\000@\247`\005\276\342\241\365\301\214\071\\N\232\362\201\231\b\260\275Q\032\225\203x'\000\374\222&;\215u\255\261P\363\244\026\001/j\344qG\265M\216\321\036\230"... bytes_read = <optimized out> loader = 0xe88b40 pixbuf = <optimized out> animation = <optimized out> iter = <optimized out> has_frame = <optimized out> info = {width = 128, height = 128, input_width = 0, input_height = 0, preserve_aspect_ratio = 1} file = 0xe88b20 file_info = <optimized out> input_stream = 0xe89360 #12 0x00007ffff77ad102 in gnome_desktop_thumbnail_factory_generate_thumbnail (factory=<optimized out>, uri=0xe8b860 "file:///home/rose/utsira.crw", mime_type=<optimized out>) at gnome-desktop-thumbnail.c:1179 pixbuf = <optimized out> scaled = <optimized out> tmp_pixbuf = <optimized out> script = <optimized out> expanded_script = 0xde7700 "" width = <optimized out> height = <optimized out> size = 128 original_width = 0 original_height = 0 dimension = "\300Y8\354\377\177\000\000\345\355\336", <incomplete sequence \367> scale = <optimized out> exit_status = 32767 tmpname = 0x50812070 <Address 0x50812070 out of bounds> __PRETTY_FUNCTION__ = "gnome_desktop_thumbnail_factory_generate_thumbnail" #13 0x00000000004dc02b in thumbnail_thread_start (data=<optimized out>) at nautilus-thumbnails.c:723 info = 0xe930d0 pixbuf = <optimized out> current_orig_mtime = 1337867034 current_time = 1350639728 node = <optimized out> __PRETTY_FUNCTION__ = "thumbnail_thread_start" #14 0x00007ffff4998ec6 in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #15 0x00007ffff46d26ed in clone () from /lib64/libc.so.6 No symbol table info available. From the trace, the bug is actually coming from libopenraw which provides a gdk-pixbuf loader for RAW files. Nautilus is trying to generate a thumbnail and explodes :) Created attachment 326914 [details]
nautilus gdb output
I just compiled libopenraw with debug option.
root@leopard:/root(42)# qlist -Iv libopenraw gnome-desktop
gnome-base/gnome-desktop-3.4.2
media-libs/libopenraw-0.0.9
The gdb output is attached.
Should I file a libopenraw bug?
Renaming bug and reassigning to libopenraw maintainers. Please take a look at https://bugs.freedesktop.org/show_bug.cgi?id=52258 - apparently, libopenraw is known to crash with D300 files. If you are not using a D300, please file a new bug upstream (https://bugs.freedesktop.org/enter_bug.cgi?product=libopenraw) and link it here so that openraw maintainers can keep track of it. You will probably need to provide the specific raw file that causes the OpenRaw::IO::MemStream::read segfault. As a temporary workaround for nautilus crashes, you can emerge libopenraw with USE=-gtk; that should disable the libopenraw's gdk-pixbuf plugin. This revision was removed from tree. Please re-open if you can reproduce the problem on an updated system with libopenraw-0.1.2. |