After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 644783 - [region] Drag'n'drop of keyboard layouts crashes
[region] Drag'n'drop of keyboard layouts crashes
Status: RESOLVED FIXED
Product: gnome-control-center
Classification: Core
Component: Other Preferences
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Control-Center Maintainers
Control-Center Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-03-15 02:13 UTC by Bastien Nocera
Modified: 2011-03-15 17:46 UTC
See Also:
GNOME target: 3.0
GNOME version: ---



Description Bastien Nocera 2011-03-15 02:13:21 UTC
The DND code probably frees something it shouldn't. After 2 drops, I get:

  • #0 g_utf8_validate
    at gutf8.c line 1784
  • #1 g_variant_new_string
    at gvariant.c line 1133
  • #2 g_variant_new_strv
    at gvariant.c line 1353
  • #3 g_settings_set_strv
    at gsettings.c line 1977
  • #4 xkb_layouts_dnd_data_received
    at gnome-region-panel-xkblt.c line 197
  • #5 _gtk_marshal_VOID__OBJECT_INT_INT_BOXED_UINT_UINT
    at gtkmarshalers.c line 2314
  • #6 g_closure_invoke
    at gclosure.c line 767
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 gtk_drag_selection_received
    at gtkdnd.c line 1771
  • #11 g_closure_invoke
    at gclosure.c line 767
  • #12 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #13 g_signal_emit_valist
    at gsignal.c line 2983
  • #14 g_signal_emit_by_name
    at gsignal.c line 3077
  • #15 gtk_selection_retrieval_report
    at gtkselection.c line 2986
  • #16 gtk_selection_convert
    at gtkselection.c line 1117
  • #17 gtk_drag_dest_drop
    at gtkdnd.c line 2273
  • #18 gtk_drag_find_widget
    at gtkdnd.c line 1853
  • #19 _gtk_drag_dest_handle_event
    at gtkdnd.c line 1607
  • #20 gtk_main_do_event
    at gtkmain.c line 1890
  • #21 gdk_event_source_dispatch
    at gdkeventsource.c line 318
  • #22 g_main_dispatch
    at gmain.c line 2440
  • #23 g_main_context_dispatch
    at gmain.c line 3013
  • #24 g_main_context_iterate
    at gmain.c line 3091
  • #25 g_main_loop_run
    at gmain.c line 3299
  • #26 gtk_main
    at gtkmain.c line 1349
  • #27 g_application_run
    at gapplication.c line 1242
  • #28 main
    at control-center.c line 152

Comment 1 Matthias Clasen 2011-03-15 12:03:41 UTC
My recommendation is to just drop dnd there, doesn't seem very useful.
Comment 2 Bastien Nocera 2011-03-15 17:46:59 UTC
commit 56eb1b15924cc76919bc0f34ec4b15e3694fdac4
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 15 17:43:09 2011 +0000

    region: Make drag'n'drop work
    
    By making sure we only store the layouts in the list store, and keep
    GSettings in sync with the list store, rather than constantly re-reading
    from GSettings.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=644783