Open FabioArceri opened 7 months ago
But not with fedora 38 and caja-1.27.2 plus latest commits from master branch. Here caja doesn't crash with your steps-to-reproduce. We need to find out what is different here.
Backtrace from fedora 39 with caja-1.26.3:
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/caja'.
Program terminated with signal SIGSEGV, Segmentation fault.
warning: Section `.reg-xstate/3175' in core file too small.
#0 0x000056450162aee4 in update_layout_menus (view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:758
758 action_name = is_auto_layout ? view->details->sort->action : FM_ACTION_MANUAL_LAYOUT;
[Current thread is 1 (Thread 0x7f5573a5ab00 (LWP 3175))]
Thread 1 (Thread 0x7f5573a5ab00 (LWP 3175)):
#0 0x000056450162aee4 in update_layout_menus (view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:758
action_name = <optimized out>
is_auto_layout = 1
action = <optimized out>
file = 0x564503a79280 [CajaVFSFile]
#1 0x000056450162b139 in update_layout_menus (view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:744
file = 0x564503a79280 [CajaVFSFile]
icon_container = 0x56450386b400 [FMIconContainer]
icon_view = 0x564503aad4c0 [FMIconView]
#2 real_set_sort_criterion (clear=1, sort=0x0, icon_view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:388
file = 0x564503a79280 [CajaVFSFile]
icon_container = 0x56450386b400 [FMIconContainer]
icon_view = 0x564503aad4c0 [FMIconView]
#3 clear_sort_criterion (icon_view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:408
icon_container = 0x56450386b400 [FMIconContainer]
icon_view = 0x564503aad4c0 [FMIconView]
#4 fm_icon_view_reset_to_defaults (view=0x564503aad4c0 [FMIconView]) at file-manager/fm-icon-view.c:2049
icon_container = 0x56450386b400 [FMIconContainer]
icon_view = 0x564503aad4c0 [FMIconView]
#5 0x0000564501623af7 in fm_directory_view_reset_to_defaults (view=0x564503aad4c0 [FMIconView]) at file-manager/fm-directory-view.c:9970
mode = <optimized out>
__func__ = "fm_directory_view_reset_to_defaults"
#6 0x00007f557543852a in g_closure_invoke (closure=0x5645037c5ba0, return_value=0x0, n_param_values=1, param_values=0x7ffd453c7680, invocation_hint=0x7ffd453c75d0) at ../gobject/gclosure.c:832
marshal = 0x7f557543d510 <g_cclosure_marshal_VOID__VOID>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x5645037c5b80
__func__ = "g_closure_invoke"
#7 0x00007f5575466fec in signal_emit_unlocked_R.isra.0 (node=node@entry=0x7ffd453c7750, detail=detail@entry=0, instance=instance@entry=0x5645037c5a60, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffd453c7680) at ../gobject/gsignal.c:3980
tmp = <optimized out>
handler = 0x5645037c5bf0
accumulator = <optimized out>
emission = {next = 0x7ffd453c7a50, instance = 0x5645037c5a60, ihint = {signal_id = 363, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 0x4 [void]}
hlist = <optimized out>
handler_list = 0x5645037c5bf0
return_accu = <optimized out>
accu = {g_type = 0x0, 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 = <optimized out>
max_sequential_handler_number = <optimized out>
return_value_altered = <optimized out>
n_params = <optimized out>
#8 0x00007f5575457d59 in signal_emit_valist_unlocked (instance=instance@entry=0x5645037c5a60, signal_id=signal_id@entry=363, detail=detail@entry=0, var_args=var_args@entry=0x7ffd453c78c0) at ../gobject/gsignal.c:3612
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
node_copy = {signal_id = 363, itype = 0x564502c75570 [GtkAction], name = 0x7f55755fbb5c "activate", destroyed = 0, flags = 9, n_params = 0, single_va_closure_is_valid = 1, single_va_closure_is_after = 0, param_types = 0x0, return_type = 0x4 [void], class_closure_bsa = 0x564503082ee0, accumulator = 0x0, c_marshaller = 0x7f557543d510 <g_cclosure_marshal_VOID__VOID>, va_marshaller = 0x7f5575436240 <g_cclosure_marshal_VOID__VOIDv>, emission_hooks = 0x0, single_va_closure = 0x56450307cf60}
__func__ = "signal_emit_valist_unlocked"
#9 0x00007f5575457f91 in g_signal_emit_valist (instance=0x5645037c5a60, signal_id=363, detail=0, var_args=var_args@entry=0x7ffd453c78c0) at ../gobject/gsignal.c:3355
#10 0x00007f5575458053 in g_signal_emit (instance=instance@entry=0x5645037c5a60, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3675
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7ffd453c79a0, reg_save_area = 0x7ffd453c78e0}}
Python Exception <class 'gdb.error'>: value has been optimized out
Full backtrace is here: https://www.dropbox.com/scl/fi/t7322jxymmbo5q505v1iy/caja_backtrace.txt?rlkey=d603bmqynrw7xcebhzwpvno6z&dl=0
I was just unable to duplicate this on 1.27.2 (plus git commits to current master), though test was on wayland because that's what I am running at the moment. I will have to retest on an x11 session to determine if this was fixed by something unique to the 1.27 series
Expected behaviour
Caja should just be applying the default settings and start ordering the icons by emblem.
Actual behaviour
Caja crashes after clicking.
Steps to reproduce the behaviour
1) Open "Edit -> Preferences" and set emblems in the default sort order dropdown menu. 2) Close the preferences window. 3) Go to "View -> Reset View to Default" and you will see Caja crashing after about one second.
MATE general version
1.26.0
Linux Distribution and Package version
Link to bugreport of your Distribution (requirement)