installer - Fix time selection, again.
authorMatthew Dillon <dillon@apollo.backplane.com>
Fri, 8 Aug 2014 02:06:49 +0000 (19:06 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Fri, 8 Aug 2014 02:06:49 +0000 (19:06 -0700)
* The installer asks you to input your local time.  This is separate from it
  asking you whether the CMOS clock is local or UTC.

* We previously fixed the CMOS clock local/UTC selection, but the local time
  entry was still broken.

* This patch sets the TZ environment variable for the installer itself so
  when you input your local time it actually does the correct local conversion
  for your time zone.  Otherwise the local conversion is done using GMT which
  is not right.

Reported-by: Don Allen
usr.sbin/installer/dfuibe_installer/fn_configure.c

index 83bfd2e..616de96 100644 (file)
@@ -823,8 +823,11 @@ fn_set_timezone(struct i_fn_args *a)
                    a->os_root, cmd_name(a, "CP"),
                    selection,
                    a->os_root, a->cfg_root);
-               if (commands_execute(a, cmds))
+               if (commands_execute(a, cmds)) {
                        inform(a->c, _("The Time Zone has been set to %s."), selection);
+                       setenv("TZ", selection, 1);
+                       tzset();
+               }
        }
        commands_free(cmds);
 }