[gnome-control-center/benzea/display-more-error-handling: 2/2] display: Add guards for NULL display configuration
- From: Benjamin Berg <bberg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center/benzea/display-more-error-handling: 2/2] display: Add guards for NULL display configuration
- Date: Wed, 3 Jul 2019 23:51:31 +0000 (UTC)
commit 65c50a8eb5d50176f41362038b1acd4bdd2111a3
Author: Benjamin Berg <bberg redhat com>
Date: Wed Jul 3 09:53:38 2019 +0200
display: Add guards for NULL display configuration
This may happen under some conditions. Possibly due to a race condition
(i.e. we did not receive any configuration from mutter yet) or also if
we are not running on GNOME.
Add guards for NULL configuration. This configuration is never
applicable and mostly clears the UI.
Fixes: #604
panels/display/cc-display-panel.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
---
diff --git a/panels/display/cc-display-panel.c b/panels/display/cc-display-panel.c
index b15a774f3..a1b9250a2 100644
--- a/panels/display/cc-display-panel.c
+++ b/panels/display/cc-display-panel.c
@@ -745,6 +745,12 @@ rebuild_ui (CcDisplayPanel *panel)
g_list_store_remove_all (panel->primary_display_list);
gtk_list_store_clear (panel->output_selection_list);
+ if (!panel->current_config)
+ {
+ panel->rebuilding_counter--;
+ return;
+ }
+
n_active_outputs = 0;
n_usable_outputs = 0;
outputs = cc_display_config_get_ui_sorted_monitors (panel->current_config);
@@ -986,6 +992,12 @@ update_apply_button (CcDisplayPanel *panel)
gboolean config_equal;
g_autoptr(CcDisplayConfig) applied_config = NULL;
+ if (!panel->current_config)
+ {
+ reset_titlebar (panel);
+ return;
+ }
+
applied_config = cc_display_config_manager_get_current (panel->manager);
config_equal = cc_display_config_equal (panel->current_config,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]