summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'bin/etc-update')
-rwxr-xr-xbin/etc-update9
1 files changed, 5 insertions, 4 deletions
diff --git a/bin/etc-update b/bin/etc-update
index e8ba989c..c597a50b 100755
--- a/bin/etc-update
+++ b/bin/etc-update
@@ -401,12 +401,13 @@ Please select from the menu above (-1 to exit, losing this merge): "
my_input=$(read_int)
case ${my_input} in
1) echo "Replacing ${ofile} with ${mfile}"
- if [[ ${USERLAND:-GNU} == GNU ]]; then
- chown --reference="${ofile}" "${mfile}"
- chmod --reference="${ofile}" "${mfile}"
- else
+ if [[ ${USERLAND} == BSD ]] || \
+ [[ ${USERLAND} == Darwin ]] ; then
chown "$(stat -f %Su:%Sg "${ofile}")" "${mfile}"
chmod $(stat -f %Mp%Lp "${ofile}") "${mfile}"
+ else
+ chown --reference="${ofile}" "${mfile}"
+ chmod --reference="${ofile}" "${mfile}"
fi
mv ${mv_opts} "${mfile}" "${ofile}"
rm ${rm_opts} "${file}"