--- src/nspawn/nspawn.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c index dd7337b..f400a65 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -481,10 +481,8 @@ static int setup_timezone(const char *dest) { return 0; } - z = path_startswith(p, "../usr/share/zoneinfo/"); - if (!z) - z = path_startswith(p, "/usr/share/zoneinfo/"); - if (!z) { + if (!((z = path_startswith(p, "../usr/share/zoneinfo/")) || + (z = path_startswith(p, "/usr/share/zoneinfo/")))) { log_warning("/etc/localtime does not point into /usr/share/zoneinfo/, not updating container timezone."); return 0; } @@ -495,14 +493,11 @@ static int setup_timezone(const char *dest) { r = readlink_malloc(where, &q); if (r >= 0) { - y = path_startswith(q, "../usr/share/zoneinfo/"); - if (!y) - y = path_startswith(q, "/usr/share/zoneinfo/"); - - - /* Already pointing to the right place? Then do nothing .. */ - if (y && streq(y, z)) - return 0; + if ((y = path_startswith(q, "../usr/share/zoneinfo/")) || + (y = path_startswith(q, "/usr/share/zoneinfo/"))) + /* Already pointing to the right place? Then do nothing .. */ + if (streq(y, z)) + return 0; } check = strjoin(dest, "/usr/share/zoneinfo/", z, NULL); -- 1.8.4.4 _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel