[OE-core] [PATCH] initscripts: fix bashism in bootmisc.sh
Ben Shelton
ben.shelton at ni.com
Wed Jul 23 14:49:05 UTC 2014
In the commit 'initscripts: save /etc/timestamp with seconds accuracy',
a bashism was introduced in the bootmisc.sh script in the code to set
the current date from the stored value in /etc/timestamp. This causes
that operation to fail with the following message when /bin/sh is not
bash:
/etc/init.d/rc: /etc/rcS.d/S55bootmisc.sh: line 73: syntax error: bad substitution
Fixed by using 'cut' (standard under POSIX) rather than bash-specific
substring expansion.
[YOCTO #6566]
Signed-off-by: Ben Shelton <ben.shelton at ni.com>
Tested-by: Maxin B. John <maxin.john at enea.com>
---
meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh b/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
index ccc7f9f..923fa88 100755
--- a/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
+++ b/meta/recipes-core/initscripts/initscripts-1.0/bootmisc.sh
@@ -70,7 +70,10 @@ then
read TIMESTAMP < /etc/timestamp
if [ ${TIMESTAMP} -gt $SYSTEMDATE ]; then
# format the timestamp as date expects it (2m2d2H2M4Y.2S)
- date -u ${TIMESTAMP:4:8}${TIMESTAMP:0:4}.${TIMESTAMP:(-2)}
+ TS_YR=$(echo $TIMESTAMP | cut -c 1-4)
+ TS_SEC=$(echo $TIMESTAMP | cut -c 13-14)
+ TS_REST=$(echo $TIMESTAMP | cut -c 5-12)
+ date -u ${TS_REST}${TS_YR}.${TS_SEC}
test -x /etc/init.d/hwclock.sh && /etc/init.d/hwclock.sh stop
fi
fi
--
2.0.2
More information about the Openembedded-core
mailing list