X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fnspawn.c;h=aaa5d1f9d0c0d43aafeb0fa47887ec6b2d0732e9;hb=e677657e8dddb33d1f1e32eda0ebc126e08a538d;hp=cd528deb79314e487c0d042a96000be02d952e6d;hpb=fd14078a3ab2110cd10e5eb55cdaeecfa51a189c;p=elogind.git diff --git a/src/nspawn.c b/src/nspawn.c index cd528deb7..aaa5d1f9d 100644 --- a/src/nspawn.c +++ b/src/nspawn.c @@ -125,9 +125,9 @@ static int mount_all(const char *dest) { unsigned k; int r = 0; + char *where; for (k = 0; k < ELEMENTSOF(mount_table); k++) { - char *where; int t; if (asprintf(&where, "%s/%s", dest, mount_table[k].where) < 0) { @@ -167,6 +167,13 @@ static int mount_all(const char *dest) { free(where); } + /* Fix the timezone, if possible */ + if (asprintf(&where, "%s/%s", dest, "/etc/localtime") >= 0) { + mount("/etc/localtime", where, "bind", MS_BIND, NULL); + mount("/etc/localtime", where, "bind", MS_BIND|MS_REMOUNT|MS_RDONLY, NULL); + free(where); + } + return r; }