Commit 30958ea8 authored by Matthias Clasen's avatar Matthias Clasen
Browse files

Fix a segfault in gtk_statusbar_remove_all

https://bugzilla.gnome.org/show_bug.cgi?id=640487
parent d51c617e
......@@ -529,7 +529,10 @@ gtk_statusbar_remove_all (GtkStatusbar *statusbar,
if (prev == NULL)
prev = priv->messages;
list = prev->next;
if (prev)
list = prev->next;
else
list = NULL;
}
else
{
......
......@@ -232,17 +232,38 @@ test_spin_button_arrows (void)
g_assert (oldval == 0);
}
static void
test_statusbar_remove_all (void)
{
GtkWidget *statusbar;
g_test_bug ("640487");
statusbar = gtk_statusbar_new ();
g_object_ref_sink (statusbar);
gtk_statusbar_push (GTK_STATUSBAR (statusbar), 1, "bla");
gtk_statusbar_push (GTK_STATUSBAR (statusbar), 1, "bla");
gtk_statusbar_remove_all (GTK_STATUSBAR (statusbar), 1);
g_object_unref (statusbar);
}
int
main (int argc,
char *argv[])
{
gtk_test_init (&argc, &argv);
g_test_bug_base ("http://bugzilla.gnome.org/");
gtk_test_register_all_types();
g_test_add_func ("/tests/statusbar-remove-all", test_statusbar_remove_all);
g_test_add_func ("/ui-tests/text-access", test_text_access);
g_test_add_func ("/ui-tests/button-clicks", test_button_clicks);
g_test_add_func ("/ui-tests/keys-events", test_button_keys);
g_test_add_func ("/ui-tests/slider-ranges", test_slider_ranges);
g_test_add_func ("/ui-tests/xserver-sync", test_xserver_sync);
g_test_add_func ("/ui-tests/spin-button-arrows", test_spin_button_arrows);
return g_test_run();
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment