Fix nasty bug in chmod, plus minor fixes.
[pkgusr] / usr / lib / pkgusr / chown
index 933c415..4fe1671 100755 (executable)
@@ -22,7 +22,7 @@ if [ ! -n "$DAISY_CHAIN" ]; then
     exit 1
 fi
 
-if [ $UID == 0 ]; then
+if [ $(id -u) == 0 ]; then
     echo 1>&2 '***' $(dirname $0) should not be in root\'s \$PATH
     echo 1>&2 '***' call '"'$DAISY_CHAIN $@'"' directly.
     exit 1
@@ -52,7 +52,7 @@ report=0
 
 # Catch the case where USER is somebody else.
 if [ -n "$usr" ]; then
-    printf '%d' $usr &>/dev/null
+    printf '%d' "$usr" &>/dev/null
     if [ $? -eq 0 ]; then
        if [ $usr -ne $(id -u) ]; then
            report=1
@@ -67,7 +67,7 @@ fi
 # Catch the case where GROUP isn't in our groups.
 if [ -n "$grp" -a $report -eq 0 ]; then
     GRP_CHAIN=""
-    printf '%d' $grp &>/dev/null
+    printf '%d' "$grp" &>/dev/null
     if [ $? -eq 0 ]; then
        GRP_LIST=$(id -G)
     else
@@ -88,7 +88,7 @@ fi
 if [ $report -eq 1 ]; then
     echo 1>&2 '***' chown ${cmdline}
 else
-    exec $DAISY_CHAIN ${cmdline} || exit $?
+    $DAISY_CHAIN ${cmdline} || exit $?
 fi
 
 exit 0