Patchwork [1/1] ddimage: fix incompatibility with dash

login
register
mail settings
Submitter Hongxu Jia
Date June 6, 2013, 6:53 a.m.
Message ID <e9e88f4e13f37f75c0af8d7a039a7642ce3f0d6f.1370500080.git.hongxu.jia@windriver.com>
Download mbox | patch
Permalink /patch/51207/
State Accepted
Commit 4c6f7a5d8bd6ada434b91037ecd5db06f3eac814
Headers show

Comments

Hongxu Jia - June 6, 2013, 6:53 a.m.
On systems with dash as /bin/sh there were failures while invoking ddimage.
Fix to let it work with both bash and dash shells.

[YOCTO #4617]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 scripts/contrib/ddimage |   16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

Patch

diff --git a/scripts/contrib/ddimage b/scripts/contrib/ddimage
index 956699c..ab1d4c7 100755
--- a/scripts/contrib/ddimage
+++ b/scripts/contrib/ddimage
@@ -6,11 +6,11 @@  BLACKLIST_DEVICES="/dev/sda"
 # 1MB blocksize
 BLOCKSIZE=1048576
 
-function usage() {
+usage() {
 	echo "Usage: $(basename $0) IMAGE DEVICE"
 }
 
-function image_details() {
+image_details() {
 	IMG=$1
 	echo "Image details"
 	echo "============="
@@ -21,7 +21,7 @@  function image_details() {
 	echo ""
 }
 
-function device_details() {
+device_details() {
 	DEV=$1
 	BLOCK_SIZE=512
 
@@ -61,10 +61,12 @@  if [ ! -e "$IMAGE" ]; then
 fi
 
 
-if [ "${BLACKLIST_DEVICES/${DEVICE}/ERROR}" != "$BLACKLIST_DEVICES" ]; then
-	echo "ERROR: Device $DEVICE is blacklisted"
-	exit 1
-fi
+for i in ${BLACKLIST_DEVICES}; do
+	if [ "$i" = "$DEVICE" ]; then
+		echo "ERROR: Device $DEVICE is blacklisted"
+		exit 1
+	fi
+done
 
 if [ ! -w "$DEVICE" ]; then
 	echo "ERROR: Device $DEVICE does not exist or is not writable"