thumbnailer bug: unref file attributes also causes unref of icon supplied from remote via "preview::icon"
object = g_file_info_get_attribute_object (file_info,
G_FILE_ATTRIBUTE_PREVIEW_ICON);
g_object_unref (file_info); <-- this fires entire jungle freeing, including the banana, ...
if (!object)
return NULL;
if (!G_IS_LOADABLE_ICON (object)) {
g_object_unref (object);
return NULL;
at gnome-desktop-thumbnail.c, also see the backtrace
#0 0x00007ffff709e1df in g_object_unref (_object=0x7fffdc020330, _object=<optimized out>)
at ../glib/gobject/gobject.c:3243
#1 0x00007ffff71c2a8f in _g_file_attribute_value_clear (attr=0x7fffcc018de8, attr=<optimized out>)
at ../glib/gio/gfileattribute.c:176
#2 0x00007ffff71b7b9f in g_file_info_finalize (object=0x7fffd004c900) at ../glib/gio/gfileinfo.c:327
#3 0x00007ffff709e385 in g_object_unref (_object=0x7fffd004c900, _object=<optimized out>)
at ../glib/gobject/gobject.c:3346
#4 0x000055555561757f in get_preview_thumbnail
(uri=0x5555562d0840 "localtest:///home/aa/8.jpg", size=256)
at ../nautilus/src/gnome-desktop/gnome-desktop-thumbnail.c:972
and its gdb excerpt
(gdb) p *((GVfsIcon *)0x7fffdc020330)
$59 = {
parent_instance = {
g_type_instance = {g_class = 0x55555576ae90 [g_type: None]},
ref_count = 1,
qdata = 0x0
},
mount_spec = 0x7fffcc0051f0,
icon_id = 0x7fffcc0011a0 "localtest:///home/aa/8.jpg#icon"
}
Edited by Just Me