monitor-config: prevent assert that at least one output is connected

Apparently some connector technologies don't distinguish between
on and off, and there might be valid use cases for running without
any connected monitor.
In that case, just avoid any configuration at all.

https://bugzilla.gnome.org/show_bug.cgi?id=709009
This commit is contained in:
Giovanni Campagna 2013-10-15 20:12:05 +02:00 committed by Adel Gadllah
parent badebfae6b
commit b86a289ee3

View File

@ -824,6 +824,9 @@ meta_monitor_config_get_stored (MetaMonitorConfig *self,
MetaConfiguration key; MetaConfiguration key;
MetaConfiguration *stored; MetaConfiguration *stored;
if (n_outputs == 0)
return NULL;
make_config_key (&key, outputs, n_outputs, -1); make_config_key (&key, outputs, n_outputs, -1);
stored = g_hash_table_lookup (self->configs, &key); stored = g_hash_table_lookup (self->configs, &key);
@ -1231,6 +1234,12 @@ meta_monitor_config_make_default (MetaMonitorConfig *self,
outputs = meta_monitor_manager_get_outputs (manager, &n_outputs); outputs = meta_monitor_manager_get_outputs (manager, &n_outputs);
meta_monitor_manager_get_screen_limits (manager, &max_width, &max_height); meta_monitor_manager_get_screen_limits (manager, &max_width, &max_height);
if (n_outputs == 0)
{
meta_verbose ("No output connected, not applying configuration\n");
return;
}
default_config = make_default_config (self, outputs, n_outputs, max_width, max_height); default_config = make_default_config (self, outputs, n_outputs, max_width, max_height);
if (default_config != NULL) if (default_config != NULL)