diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-06-23 22:54:02 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-06-23 20:49:57 -0400 |
commit | f8251a4da99af1341575932f2800df8f6f8ec358 (patch) | |
tree | d6b15ec20b1ee268a6a19107cebeda0e106163f9 /testsuite | |
parent | 21694949fce2040279af801542be38134612aa9f (diff) | |
download | gtk+-f8251a4da99af1341575932f2800df8f6f8ec358.tar.gz |
Add a test for reinserting action groups
This is reproducing a crash that was seen
in gnome-builder.
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/gtk/action.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/testsuite/gtk/action.c b/testsuite/gtk/action.c index a21fa611b1..585753e10a 100644 --- a/testsuite/gtk/action.c +++ b/testsuite/gtk/action.c @@ -214,6 +214,26 @@ g_test_action_muxer (void) /* main */ +static void +test_reinsert (void) +{ + GtkWidget *widget; + GActionGroup *group; + + widget = gtk_label_new (""); + group = G_ACTION_GROUP (g_simple_action_group_new ()); + + gtk_widget_insert_action_group (widget, "test", group); + g_assert (gtk_widget_get_action_group (widget, "test") == group); + + g_clear_object (&group); + + group = gtk_widget_get_action_group (widget, "test"); + gtk_widget_insert_action_group (widget, "test", group); + + gtk_widget_destroy (widget); +} + int main (int argc, char **argv) @@ -227,6 +247,7 @@ main (int argc, action_test_teardown); g_test_add_func ("/action/muxer/update-parent", g_test_action_muxer); + g_test_add_func ("/action/reinsert", test_reinsert); return g_test_run (); } |