- if (!variables[VARIABLE_LANG]) {
- variables[VARIABLE_LANG] = strdup("C");
- if (!variables[VARIABLE_LANG]) {
---- systemd-196/src/timedate/timedated.c~ 2012-10-16 23:35:40.589269718 +0200
-+++ systemd-196/src/timedate/timedated.c 2012-12-21 11:46:13.545086335 +0100
-@@ -175,6 +175,13 @@
- }
- }
-
-+ r = parse_env_file("/etc/sysconfig/timezone", NEWLINE,
-+ "TIMEZONE", &tz.zone,
-+ NULL);
-+ if (r < 0) {
-+ if (r != -ENOENT)
-+ log_warning("Failed to read /etc/sysconfig/timezone: %s", strerror(-r));
-+ }
- have_timezone:
- if (isempty(tz.zone)) {
- free(tz.zone);
-diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
-index 9196789..1d1a916 100644
---- a/src/vconsole/vconsole-setup.c
-+++ b/src/vconsole/vconsole-setup.c
-@@ -358,6 +358,17 @@
- if (r < 0 && r != -ENOENT)
- log_warning("Failed to read /etc/vconsole.conf: %s", strerror(-r));
- }
-+
-+ if (r <= 0) {
-+ r = parse_env_file("/etc/sysconfig/console", NEWLINE,
-+ "CONSOLEFONT", &vc_font,
-+ "CONSOLEMAP", &vc_font_map,
-+ "CONSOLESCREENFONTMAP", &vc_font_unimap,
-+ "KEYTABLE", &vc_keymap,
-+ NULL);
-+ if (r < 0 && r != -ENOENT)
-+ log_warning("Failed to read /etc/sysconfig/console: %s", strerror(-r));
+ add = NULL;
+ for (i = 0; i < _VARIABLE_MAX; i++) {
+ char *s;
+--- a/src/basic/time-util.c~ 2016-11-03 18:16:42.000000000 +0100
++++ b/src/basic/time-util.c 2016-11-12 19:54:28.457197174 +0100
+@@ -1290,8 +1290,16 @@ int get_timezone(char **tz) {
+ e = path_startswith(t, "/usr/share/zoneinfo/");
+ if (!e)
+ e = path_startswith(t, "../usr/share/zoneinfo/");
+- if (!e)
+- return -EINVAL;
++ if (!e) {
++ r = parse_env_file("/etc/sysconfig/timezone", NEWLINE,
++ "TIMEZONE", &e,
++ NULL);
++ if (r < 0) {
++ if (r != -ENOENT)
++ log_warning("Failed to read /etc/sysconfig/timezone: %s", strerror(-r));
++ return -EINVAL;
++ }