Nautilus crashes (and blocks the entire system) when the user tries to view a gif file's properties.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
exempi (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
System: Ubuntu 11.10 64 bits, Laptop with Core 2 Duo 2.8Ghz + 4GB RAM + Integrated Intel graphics card
Package version: libexempi3 (2.1.1-1build2)
When I try to open the properties dialog over a GIF file, my computer gets blocked and the memory consumption grows fast as light... (more than 3GB of RAM in 2 seconds).
Stacktrace:
-------
GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://
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-linux-gnu".
Para las instrucciones de informe de errores, vea:
<http://
Leyendo símbolos desde /usr/bin/
hecho.
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) run [K
Starting program: /usr/bin/nautilus
[Depuración de hilo usando libthread_db enabled]
[Nuevo Thread 0x7fffecb01700 (LWP 5133)]
[Nuevo Thread 0x7fffe7fff700 (LWP 5134)]
[Nuevo Thread 0x7fffe77fe700 (LWP 5135)]
Initializing nautilus-gdu extension
** (nautilus:5130): DEBUG: SyncDaemon already running, initializing SyncdaemonDaemon object
[Nuevo Thread 0x7fffd8a1b700 (LWP 5136)]
[Nuevo Thread 0x7fffd7dd0700 (LWP 5137)]
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
Nautilus-
Please ask your system administrator to enable user sharing.
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
(nautilus:5130): GLib-GObject-
[Thread 0x7fffd8a1b700 (LWP 5136) terminado]
[Thread 0x7fffd7dd0700 (LWP 5137) terminado]
[Nuevo Thread 0x7fffd7dd0700 (LWP 5138)]
[Nuevo Thread 0x7fffd8a1b700 (LWP 5140)]
[Thread 0x7fffe7fff700 (LWP 5134) terminado]
[Thread 0x7fffd7dd0700 (LWP 5138) terminado]
[Nuevo Thread 0x7fffd7dd0700 (LWP 5143)]
[Thread 0x7fffd7dd0700 (LWP 5143) terminado]
[Thread 0x7fffd8a1b700 (LWP 5140) terminado]
Program received signal SIGINT, Interrupt.
__memset_sse2 () at ../sysdeps/
916 ../sysdeps/
in ../sysdeps/
(gdb) backtrace full
#0 __memset_sse2 () at ../sysdeps/
No locales.
#1 0x00007ffff0ae0698 in std::string:
No symbol table info available.
#2 0x00007ffff557ae0b in GIF_MetaHandler
No symbol table info available.
#3 0x00007ffff5571ff5 in XMPFiles:
No symbol table info available.
#4 0x00007ffff556df94 in WXMPFiles_
No symbol table info available.
#5 0x00007ffff55340c8 in TXMPFiles<
No symbol table info available.
#6 0x00007ffff553444c in TXMPFiles<
No symbol table info available.
#7 0x00007ffff5533a24 in xmp_files_open_new () from /usr/lib/
No symbol table info available.
#8 0x000000000043f123 in load_location (location=0x148c0e0 "file:/
xf = <optimized out>
localname = 0x1488de0 "/home/
file = 0x149a140
#9 get_property_pages (files=<optimized out>, provider=<optimized out>) at nautilus-
file = <optimized out>
pages = 0x0
real_page = <optimized out>
uri = 0x148c0e0 "file:/
page = 0x1496020
#10 get_property_pages (provider=
No locales.
#11 0x000000000045b7e1 in append_
provider = <optimized out>
pages = <optimized out>
l = <optimized out>
providers = 0x142ff00
p = 0x142ff00
#12 0x0000000000460aa8 in create_
window = 0x142e010
l = <optimized out>
#13 is_directory_
new_window = 0x142e010
#14 is_directory_
#15 0x000000000049acfc in call_ready_
directory = 0xe428f0
node = <optimized out>
next = <optimized out>
callback = 0x112caf0
#16 0x00007ffff443ca5d in g_main_
No symbol table info available.
#17 0x00007ffff443d258 in ?? () from /lib/x86_
No symbol table info available.
#18 0x00007ffff443d792 in g_main_loop_run () from /lib/x86_
No symbol table info available.
#19 0x00007ffff6b5fe1d in gtk_main () from /usr/lib/
No symbol table info available.
#20 0x00007ffff4ffaa4e in g_application_run () from /usr/lib/
No symbol table info available.
#21 0x000000000042afe0 in main (argc=1, argv=0x7fffffff
retval = <optimized out>
application = 0x77b800
(gdb) info registers
rax 0x7ffed6eb5028 140732504166440
rbx 0x148f6c8 21558984
rcx 0xffffffffffffff86 -122
rdx 0x2020202020202020 2314885530818453536
rsi 0x20 32
rdi 0x7fff9cf89fb0 140735826927536
rbp 0xffffffff 0xffffffff
rsp 0x7fffffffdc08 0x7fffffffdc08
r8 0x39f2aff7 972206071
r9 0x180000 1572864
r10 0x8 8
r11 0x7ffff3a23316 140737280881430
r12 0x0 0
r13 0x20 32
r14 0x148f6c8 21558984
r15 0x0 0
rip 0x7ffff3a23913 0x7ffff3a23913 <__memset_
eflags 0x10206 [ PF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
(gdb) x/16i $pc
=> 0x7ffff3a23913 <__memset_
0x7ffff3a23918 <__memset_
0x7ffff3a2391d <__memset_
0x7ffff3a23922 <__memset_
0x7ffff3a23929 <__memset_
0x7ffff3a2392b <__memset_
0x7ffff3a2392e <__memset_
0x7ffff3a23931 <__memset_
0x7ffff3a23938 <__memset_
0x7ffff3a2393f <__memset_
0x7ffff3a23944 <__memset_
0x7ffff3a23948 <__memset_
0x7ffff3a2394b <__memset_
0x7ffff3a23950 <__memset_
0x7ffff3a23957 <__memset_
0x7ffff3a2395d <__memset_
(gdb) thread apply all backtrace
Hilo 4 (Thread 0x7fffe77fe700 (LWP 5135)):
#0 0x00007ffff3a73773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/
#1 0x00007ffff443cf68 in ?? () from /lib/x86_
#2 0x00007ffff443d792 in g_main_loop_run () from /lib/x86_
#3 0x00007fffec0fc9cb in ?? () from /usr/lib/
#4 0x00007ffff44622b6 in ?? () from /lib/x86_
#5 0x00007ffff4b4befc in start_thread (arg=0x7fffe77f
#6 0x00007ffff3a7f89d in clone () at ../sysdeps/
#7 0x0000000000000000 in ?? ()
Hilo 2 (Thread 0x7fffecb01700 (LWP 5133)):
#0 0x00007ffff3a73773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/
#1 0x00007ffff443cf68 in ?? () from /lib/x86_
#2 0x00007ffff443d792 in g_main_loop_run () from /lib/x86_
#3 0x00007ffff5023516 in ?? () from /usr/lib/
#4 0x00007ffff44622b6 in ?? () from /lib/x86_
#5 0x00007ffff4b4befc in start_thread (arg=0x7fffecb0
#6 0x00007ffff3a7f89d in clone () at ../sysdeps/
#7 0x0000000000000000 in ?? ()
Hilo 1 (Thread 0x7ffff7fc1960 (LWP 5130)):
#0 __memset_sse2 () at ../sysdeps/
#1 0x00007ffff0ae0698 in std::string:
#2 0x00007ffff557ae0b in GIF_MetaHandler
#3 0x00007ffff5571ff5 in XMPFiles:
#4 0x00007ffff556df94 in WXMPFiles_
#5 0x00007ffff55340c8 in TXMPFiles<
#6 0x00007ffff553444c in TXMPFiles<
#7 0x00007ffff5533a24 in xmp_files_open_new () from /usr/lib/
#8 0x000000000043f123 in load_location (location=0x148c0e0 "file:/
#9 get_property_pages (files=<optimized out>, provider=<optimized out>) at nautilus-
#10 get_property_pages (provider=
#11 0x000000000045b7e1 in append_
#12 0x0000000000460aa8 in create_
#13 is_directory_
#14 is_directory_
#15 0x000000000049acfc in call_ready_
#16 0x00007ffff443ca5d in g_main_
#17 0x00007ffff443d258 in ?? () from /lib/x86_
#18 0x00007ffff443d792 in g_main_loop_run () from /lib/x86_
#19 0x00007ffff6b5fe1d in gtk_main () from /usr/lib/
#20 0x00007ffff4ffaa4e in g_application_run () from /usr/lib/
#21 0x000000000042afe0 in main (argc=1, argv=0x7fffffff
(gdb) quit
Una sesión de depuración está activa.
Inferior 1 [process 5130] will be killed.
¿Salir de cualquier modo? (y o n)
-------
In computers with more CPU power (and more memory), the system don't became blockec, but the properties window take much more time to be loaded with GIF files than with other image types, such as PNG.