diff --git a/capplets/display/ChangeLog b/capplets/display/ChangeLog index d78cdcef5..58386d610 100644 --- a/capplets/display/ChangeLog +++ b/capplets/display/ChangeLog @@ -1,3 +1,11 @@ +2008-09-26 Jens Granseuer + + Patch by: Matt Keenan + + * xrandr-capplet.c: (show_error), (run_application): show an error + dialog instead of crashing when initialization fails due to XRandR + not being available (bug #553762) + ==================== 2.24.0.1 ==================== 2008-09-06 Jens Granseuer diff --git a/capplets/display/xrandr-capplet.c b/capplets/display/xrandr-capplet.c index ae6b80b87..3a8a980cf 100644 --- a/capplets/display/xrandr-capplet.c +++ b/capplets/display/xrandr-capplet.c @@ -62,25 +62,20 @@ struct App static void rebuild_gui (App *app); static void on_rate_changed (GtkComboBox *box, gpointer data); -#if 0 static void -show_error (const GError *err) +show_error (const char *err) { - if (!err) - return; - GtkWidget *dialog = gtk_message_dialog_new ( NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, - GTK_BUTTONS_OK, err->message); + GTK_BUTTONS_OK, err); gtk_window_set_title (GTK_WINDOW (dialog), ""); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); } -#endif static gboolean do_free (gpointer data) @@ -1726,7 +1721,8 @@ run_application (App *app) on_screen_changed, app); if (!app->screen) { - g_error ("Could not get screen info"); + g_warning (_("The X server does not support the XRANDR extension. Runtime resolution changes to the display size are not available.")); + show_error (_("The X server does not support the XRANDR extension. Runtime resolution changes to the display size are not available.")); g_object_unref (xml); return; }