Crash in gtk_widget_get_ancestor
Affected version
- Nightly flatpak: Can't test because no clear reproducer
- Other: nautilus-42~rc-1.fc36.x86_64
Steps to reproduce
Not sure, happens a few times a day over normal usage.
Additional information
#0 0x00007fae20a4c878 in gtk_widget_get_ancestor (widget=0x5570d09a6dc0, widget_type=93943018986848) at ../gtk/gtkwidget.c:11653
#1 0x00005570cf99c1e8 in button_data_file_changed (file=0x5570d129d360, button_data=0x5570d1610500) at ../src/nautilus-pathbar.c:952
#2 0x00007fae201bde60 in g_closure_invoke (closure=0x5570d0acfe20, return_value=0x0, n_param_values=1, param_values=0x7fffdf0da740, invocation_hint=0x7fffdf0da6c0) at ../gobject/gclosure.c:830
#3 0x00007fae201ea636 in signal_emit_unlocked_R.isra.0 (node=node@entry=0x5570cfe48bd0, detail=detail@entry=0, instance=instance@entry=0x5570d129d360, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffdf0da740) at ../gobject/gsignal.c:3743
#4 0x00007fae201dab2e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffdf0da8f0) at ../gobject/gsignal.c:3496
#5 0x00007fae201dadb3 in g_signal_emit (instance=instance@entry=0x5570d129d360, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3553
#6 0x00005570cf957030 in nautilus_file_emit_changed (file=0x5570d129d360) at ../src/nautilus-file.c:8369
#7 0x00005570cf9572ac in nautilus_directory_emit_change_signals (changed_files=0x7fffdf0daa10, directory=0x5570d0da0e40) at ../src/nautilus-directory.c:1044
#8 nautilus_file_changed (file=<optimized out>) at ../src/nautilus-file.c:8321
#9 0x00005570cf9bbfcc in dequeue_pending_idle_callback (callback_data=callback_data@entry=0x5570d0dc8430) at ../src/nautilus-directory-async.c:1079
#10 0x00005570cf9bc316 in directory_load_done (directory=0x5570d0dc8430, error=0x0) at ../src/nautilus-directory-async.c:1211
#11 0x00005570cf9bcbfc in more_files_callback (source_object=<optimized out>, res=0x5570d11e2bf0, user_data=0x5570d1348520) at ../src/nautilus-directory-async.c:2180
#12 0x00007fae2026b3aa in next_async_callback_wrapper (source_object=0x5570d04f60f0, res=0x5570d11e2bf0, user_data=0x5570d1348520) at ../gio/gfileenumerator.c:305
#13 0x00007fae202bacda in g_task_return_now (task=0x5570d11e2bf0) at ../gio/gtask.c:1230
#14 0x00007fae202bad1d in complete_in_idle_cb (task=task@entry=0x5570d11e2bf0) at ../gio/gtask.c:1244
#15 0x00007fae20f3f4ab in g_idle_dispatch (source=0x7fadd8003a30, callback=0x7fae202bad10 <complete_in_idle_cb>, user_data=0x5570d11e2bf0) at ../glib/gmain.c:5935
#16 0x00007fae20f42faf in g_main_dispatch (context=0x5570cfd04c60) at ../glib/gmain.c:3417
#17 g_main_context_dispatch (context=0x5570cfd04c60) at ../glib/gmain.c:4135
#18 0x00007fae20f98228 in g_main_context_iterate.constprop.0 (context=context@entry=0x5570cfd04c60, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4211
#19 0x00007fae20f40920 in g_main_context_iteration (context=context@entry=0x5570cfd04c60, may_block=may_block@entry=1) at ../glib/gmain.c:4276
#20 0x00007fae202e92fd in g_application_run (application=0x5570cfced210, argc=<optimized out>, argv=0x7fffdf0dae88) at ../gio/gapplication.c:2569
#21 0x00005570cf913e83 in main (argc=2, argv=0x7fffdf0dae88) at ../src/nautilus-main.c:81
(gdb) bt full
#0 0x00007fae20a4c878 in gtk_widget_get_ancestor (widget=0x5570d09a6dc0, widget_type=93943018986848) at ../gtk/gtkwidget.c:11653
__inst = 0x5570d09a6dc0
__t = <optimized out>
__r = <optimized out>
_g_boolean_var_ = 0
__func__ = "gtk_widget_get_ancestor"
#1 0x00005570cf99c1e8 in button_data_file_changed (file=0x5570d129d360, button_data=0x5570d1610500) at ../src/nautilus-pathbar.c:952
ancestor = <optimized out>
location = <optimized out>
current_location = <optimized out>
parent = <optimized out>
button_parent = <optimized out>
current_button_data = <optimized out>
display_name = <optimized out>
self = <optimized out>
renamed = <optimized out>
child = <optimized out>
current_dir = <optimized out>
__func__ = "button_data_file_changed"
#2 0x00007fae201bde60 in g_closure_invoke (closure=0x5570d0acfe20, return_value=0x0, n_param_values=1, param_values=0x7fffdf0da740, invocation_hint=0x7fffdf0da6c0) at ../gobject/gclosure.c:830
marshal = 0x7fae201c0180 <g_cclosure_marshal_VOID__VOID>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x5570d0acfe00
__func__ = "g_closure_invoke"
#3 0x00007fae201ea636 in signal_emit_unlocked_R.isra.0 (node=node@entry=0x5570cfe48bd0, detail=detail@entry=0, instance=instance@entry=0x5570d129d360, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffdf0da740) at ../gobject/gsignal.c:3743
tmp = <optimized out>
handler = 0x5570d172a000
accumulator = 0x0
emission = {next = 0x0, instance = 0x5570d129d360, ihint = {signal_id = 277, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 4}
class_closure = <optimized out>
hlist = <optimized out>
handler_list = 0x5570d1469840
return_accu = 0x0
accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
signal_id = 277
max_sequential_handler_number = 116928
return_value_altered = <optimized out>
EMIT_RESTART = <optimized out>
#4 0x00007fae201dab2e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffdf0da8f0) at ../gobject/gsignal.c:3496
instance_and_params = 0x7fffdf0da740
signal_return_type = <optimized out>
param_values = 0x7fffdf0da758
node = <optimized out>
i = <optimized out>
n_params = <optimized out>
__func__ = "g_signal_emit_valist"
#5 0x00007fae201dadb3 in g_signal_emit (instance=instance@entry=0x5570d129d360, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3553
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffdf0da9d0, reg_save_area = 0x7fffdf0da910}}
#6 0x00005570cf957030 in nautilus_file_emit_changed (file=0x5570d129d360) at ../src/nautilus-file.c:8369
link_files = <optimized out>
p = <optimized out>
__func__ = "nautilus_file_emit_changed"
#7 0x00005570cf9572ac in nautilus_directory_emit_change_signals (changed_files=0x7fffdf0daa10, directory=0x5570d0da0e40) at ../src/nautilus-directory.c:1044
p = 0x7fffdf0daa10
p = <optimized out>
#8 nautilus_file_changed (file=<optimized out>) at ../src/nautilus-file.c:8321
fake_list = {data = 0x5570d129d360, next = 0x0, prev = 0x0}
__func__ = "nautilus_file_changed"
#9 0x00005570cf9bbfcc in dequeue_pending_idle_callback (callback_data=callback_data@entry=0x5570d0dc8430) at ../src/nautilus-directory-async.c:1079
directory = 0x5570d0dc8430
pending_file_info = 0x0
node = <optimized out>
next = <optimized out>
file = 0x5570d129d360
changed_files = <optimized out>
added_files = <optimized out>
file_info = <optimized out>
mimetype = <optimized out>
name = <optimized out>
dir_load_state = 0x5570d1348520
#10 0x00005570cf9bc316 in directory_load_done (directory=0x5570d0dc8430, error=0x0) at ../src/nautilus-directory-async.c:1211
node = <optimized out>
#11 0x00005570cf9bcbfc in more_files_callback (source_object=<optimized out>, res=0x5570d11e2bf0, user_data=0x5570d1348520) at ../src/nautilus-directory-async.c:2180
state = 0x5570d1348520
directory = 0x5570d0dc8430
error = 0x0
files = <optimized out>
l = 0x0
info = <optimized out>
__func__ = "more_files_callback"
#12 0x00007fae2026b3aa in next_async_callback_wrapper (source_object=0x5570d04f60f0, res=0x5570d11e2bf0, user_data=0x5570d1348520) at ../gio/gfileenumerator.c:305
enumerator = 0x5570d04f60f0
#13 0x00007fae202bacda in g_task_return_now (task=0x5570d11e2bf0) at ../gio/gtask.c:1230
No locals.
#14 0x00007fae202bad1d in complete_in_idle_cb (task=task@entry=0x5570d11e2bf0) at ../gio/gtask.c:1244
No locals.
#15 0x00007fae20f3f4ab in g_idle_dispatch (source=0x7fadd8003a30, callback=0x7fae202bad10 <complete_in_idle_cb>, user_data=0x5570d11e2bf0) at ../glib/gmain.c:5935
again = <optimized out>
#16 0x00007fae20f42faf in g_main_dispatch (context=0x5570cfd04c60) at ../glib/gmain.c:3417
dispatch = 0x7fae20f3f490 <g_idle_dispatch>
prev_source = 0x0
begin_time_nsec = 21607014647548
was_in_call = 0
user_data = 0x5570d11e2bf0
callback = 0x7fae202bad10 <complete_in_idle_cb>
cb_funcs = 0x7fae210283e0 <g_source_callback_funcs>
cb_data = 0x5570d0967150
need_destroy = <optimized out>
source = 0x7fadd8003a30
current = 0x5570cfd0ff20
i = 0
__func__ = <optimized out>
#17 g_main_context_dispatch (context=0x5570cfd04c60) at ../glib/gmain.c:4135
No locals.
#18 0x00007fae20f98228 in g_main_context_iterate.constprop.0 (context=context@entry=0x5570cfd04c60, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4211
max_priority = 0
timeout = 0
some_ready = 1
nfds = 3
allocated_nfds = <optimized out>
fds = <optimized out>
begin_time_nsec = 21607014643049
#19 0x00007fae20f40920 in g_main_context_iteration (context=context@entry=0x5570cfd04c60, may_block=may_block@entry=1) at ../glib/gmain.c:4276
retval = <optimized out>
#20 0x00007fae202e92fd in g_application_run (application=0x5570cfced210, argc=<optimized out>, argv=0x7fffdf0dae88) at ../gio/gapplication.c:2569
arguments = 0x5570cfcec1d0
status = 0
context = 0x5570cfd04c60
acquired_context = <optimized out>
__func__ = "g_application_run"
#21 0x00005570cf913e83 in main (argc=2, argv=0x7fffdf0dae88) at ../src/nautilus-main.c:81
retval = <optimized out>
application = 0x5570cfced210