Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 438900

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] GNOMEAssignee: 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
Starting nautilus it segfaults. Reemerging nautilus does not help.

rose@leopard:/home_leopard/rose(2)$ 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 27797)]
[New Thread 0x7fffe9736700 (LWP 27798)]
[New Thread 0x7fffe8f35700 (LWP 27799)]
[New Thread 0x7fffcadec700 (LWP 27803)]
[New Thread 0x7fffca3e8700 (LWP 27804)]
[New Thread 0x7fffec385700 (LWP 27805)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffec385700 (LWP 27805)]
0x00007ffff4720e20 in ?? () from /lib64/libc.so.6
(gdb) bt f
#0  0x00007ffff4720e20 in ?? () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007fffc9563547 in OpenRaw::IO::MemStream::read(void*, unsigned long) ()
   from /usr/lib64/libopenraw.so.1
No symbol table info available.
#2  0x00007fffc955149e in OpenRaw::Internals::RawContainer::readInt16(OpenRaw::IO::Stream*, short&) () from /usr/lib64/libopenraw.so.1
No symbol table info available.
#3  0x00007fffc95539ad in OpenRaw::Internals::CIFF::Heap::_loadRecords() ()
   from /usr/lib64/libopenraw.so.1
No symbol table info available.
#4  0x00007fffc9553ad8 in OpenRaw::Internals::CIFF::Heap::records() ()
   from /usr/lib64/libopenraw.so.1
No symbol table info available.
#5  0x00007fffc9554006 in OpenRaw::Internals::CIFFContainer::getImageProps() ()
   from /usr/lib64/libopenraw.so.1
No symbol table info available.
#6  0x00007fffc954b894 in OpenRaw::Internals::CRWFile::_getRawData(OpenRaw::RawData&, unsigned int) () from /usr/lib64/libopenraw.so.1
No symbol table info available.
#7  0x00007fffc953e401 in OpenRaw::RawFile::getRawData(OpenRaw::RawData&, unsigned int) () from /usr/lib64/libopenraw.so.1
No symbol table info available.
#8  0x00007fffc953e491 in OpenRaw::RawFile::getRenderedImage(OpenRaw::BitmapData&, unsigned int) () from /usr/lib64/libopenraw.so.1
No symbol table info available.
#9  0x00007fffc97dff39 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 ?? () from /usr/lib64/libgnome-desktop-3.so.2
No symbol table info available.
#12 0x00007ffff77ad102 in gnome_desktop_thumbnail_factory_generate_thumbnail ()
   from /usr/lib64/libgnome-desktop-3.so.2
No symbol table info available.
#13 0x00000000004dc02b in thumbnail_thread_start (data=<optimized out>)
    at nautilus-thumbnails.c:723
        info = 0xe8cf20
        pixbuf = <optimized out>
        current_orig_mtime = 1337867034
        current_time = 1350638751
        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.
(gdb) 


What can I else do?



root@leopard:/root(39)# emerge --info
Portage 2.1.11.30 (default/linux/amd64/10.0, gcc-4.6.3, glibc-2.15-r3, 3.6.2-gentoo x86_64)
=================================================================
System uname: Linux-3.6.2-gentoo-x86_64-Intel-R-_Core-TM-_i7-2600_CPU_@_3.40GHz-with-gentoo-2.2
Timestamp of tree: Fri, 19 Oct 2012 08:00:01 +0000
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.12
dev-lang/python:          2.7.3-r2, 3.2.3-r1
dev-util/cmake:           2.8.9-r1
dev-util/pkgconfig:       0.27.1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11
sys-apps/sandbox:         2.6
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.6, 1.12.4
sys-devel/binutils:       2.22.90
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo lisp science sunrise bicatali x11 sage-on-gentoo arcon ibormuth java-overlay x-portage x-cpan x-g-octave
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL Intel-SDP dlj-1.1 skype-eula skype-4.0.0.7-copyright googleearth AdobeFlash-10.3 cadsoft Oracle-BCLA-JavaSE MakeMKV-EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -ggdb"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news noclean nostrip parallel-fetch protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo ftp://ftp.easynet.nl/mirror/gentoo/ "
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr ru"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/lisp /var/lib/layman/science /var/lib/layman/sunrise /var/lib/layman/bicatali /var/lib/layman/x11 /var/lib/layman/sage-on-gentoo /var/lib/layman/arcon /var/lib/layman/ibormuth /var/lib/layman/java-overlay /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac acl acpi admin afs alsa amd64 ao apache2 apng applet archive arpack asf aspell assistant atlas audacious audiofile automap automount bash-completion berkdb blas blast bluetooth bluray boo boost bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cli consolekit cracklib crypt css cuda cups curl cxx daap db dbi dbm dbus declarative designer devhelp device-mapper dga dia dirac djvu doc dot dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds egl elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras faac faad ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse g3dvl gcj gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp git glade glib glpk gml gmp gnome gnome-keyring gnome-print gnuplot gnutls gold gphoto2 gpm grammar graphics graphtft graphviz grass gsl gstreamer gtk gtk3 gudev guile harness hddtemp hdf hdf5 hdri html http httpd hvm hwdb iconv icq icu id3 id3tag ide imagemagick imap inotify ipod ipv6 irda ithreads jabber jadetex java java6 jbig john jpeg jpeg2k kate kdepim kdrive kerberos keymap kpathsea kqemu kvm ladspa lame lapack latex lcms ldap lensfun libffi libkms libnotify libsamplerate live lm_sensors lua lzo mad mail maildir mapnik math matroska media-library mercurial mikmod mkl mmx mmxext mng modules mono motif mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musepack musicbrainz mysql mysqli nautilus ncurses netcdf netpbm network networking networkmanager nfs nls nntp nptl nsplugin ntfs ntp numpy nvidia obex objc ocaml ocr octave odbc ofa ogdi ogg openexr opengl openmp overview pam pcre pda pdf perl plotutils plugins png podcast policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectm projectx pstricks pulseaudio python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime raw readline reiserfs reports rle romio rpc rrdcgi rrdtool sage samba sasl schroedinger science sdk sdl secure-delete semantic-desktop server session shout sip slang slp smart smbclient smp sms sndfile snmp soap sockets soup sox speex spell sql sqlite sse sse2 sse4 ssl subtitles subversion sudo suexec svg svm swig szip t1lib tcl tcpd tex tex4ht texmacs tgif theora thesaurus threads thunderbird tidy tiff tk tools truetype udev unicode usb userlocales utempter vaapi vdpau video virtualbox visio vorbis wav webdav webdav-serf webkit wmf wxwidgets x264 xa xattr xcb xemacs xetex xext xft xine xml xmlreader xmlrpc xpm xv xvid xvmc yaml youtube zlib zvbi" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_core authn_dbm authn_default authn_file authz_core authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info lbmethod_byrequests log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif slotmem_shm so socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon fuji ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" DRACUT_MODULES="caps lvm mdraid syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de fr ru" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nouveau vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Juergen Rose 2012-10-19 09:43:01 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.
Comment 2 Gilles Dartiguelongue gentoo-dev 2012-10-19 10:03:08 UTC
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 :)
Comment 3 Juergen Rose 2012-10-19 10:14:16 UTC
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?
Comment 4 Alexandre Rostovtsev (RETIRED) gentoo-dev 2012-10-19 17:18:13 UTC
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.
Comment 5 Gilles Dartiguelongue gentoo-dev 2018-11-17 18:51:48 UTC
This revision was removed from tree. Please re-open if you can reproduce the problem on an updated system with libopenraw-0.1.2.