Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:aaronbockover
gnome-settings-daemon
gnome-settings-daemon-bnc478772-ignore-user-if-...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnome-settings-daemon-bnc478772-ignore-user-if-xorg-conf-is-newer.diff of Package gnome-settings-daemon
diff --git a/plugins/xrandr/gsd-xrandr-manager.c b/plugins/xrandr/gsd-xrandr-manager.c index e3c16b6..3d8f37d 100644 --- a/plugins/xrandr/gsd-xrandr-manager.c +++ b/plugins/xrandr/gsd-xrandr-manager.c @@ -28,6 +28,7 @@ #include <unistd.h> #include <string.h> #include <errno.h> +#include <sys/stat.h> #include <locale.h> @@ -1593,6 +1594,26 @@ out: g_free (intended_filename); } +static gboolean +user_configuration_is_newer_than_xorg (GsdXrandrManager *manager) +{ + char *intended_filename; + int result; + struct stat xorg_stat, user_stat; + + if (stat ("/etc/X11/xorg.conf", &xorg_stat) != 0) + return TRUE; + + intended_filename = gnome_rr_config_get_intended_filename (); + result = stat (intended_filename, &user_stat); + g_free (intended_filename); + + if (result != 0) + return FALSE; + + return user_stat.st_mtime > xorg_stat.st_mtime; +} + gboolean gsd_xrandr_manager_start (GsdXrandrManager *manager, GError **error) @@ -1632,7 +1653,8 @@ gsd_xrandr_manager_start (GsdXrandrManager *manager, gdk_error_trap_pop (); } - apply_stored_configuration_at_startup (manager); + if (user_configuration_is_newer_than_xorg (manager)) + apply_stored_configuration_at_startup (manager); gdk_window_add_filter (gdk_get_default_root_window(), (GdkFilterFunc)event_filter,
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor