svn commit: r340082 - head/sys/tools
Rodney W. Grimes
freebsd at pdx.rh.CN85.dnsmgr.net
Fri Nov 2 22:57:02 UTC 2018
> Author: emaste
> Date: Fri Nov 2 21:07:06 2018
> New Revision: 340082
> URL: https://svnweb.freebsd.org/changeset/base/340082
>
> Log:
> embed_mfs.sh: replace some compound statements with conventional ifs
>
> Use the more readable form - there's no need to try being clever.
This also fixes the fact that an unhandled error did not result
in the exit 1 being done, though the chance of that happening
(echo would have to fail) is near nil).
>
> Modified:
> head/sys/tools/embed_mfs.sh
>
> Modified: head/sys/tools/embed_mfs.sh
> ==============================================================================
> --- head/sys/tools/embed_mfs.sh Fri Nov 2 20:56:19 2018 (r340081)
> +++ head/sys/tools/embed_mfs.sh Fri Nov 2 21:07:06 2018 (r340082)
> @@ -45,7 +45,10 @@ fi
>
> mfs_size=`stat -f '%z' $2 2> /dev/null`
> # If we can't determine MFS image size - bail.
> -[ -z ${mfs_size} ] && echo "Can't determine MFS image size" && exit 1
> +if [ -z ${mfs_size} ]; then
> + echo "Can't determine MFS image size"
> + exit 1
> +fi
>
> err_no_mfs="Can't locate mfs section within "
>
> @@ -53,7 +56,10 @@ if file -b $1 | grep -q '^ELF ..-bit .SB executable';
>
> sec_info=`elfdump -c $1 2> /dev/null | grep -A 5 -E "sh_name: oldmfs$"`
> # If we can't find the mfs section within the given kernel - bail.
> - [ -z "${sec_info}" ] && echo "${err_no_mfs} $1" && exit 1
^^
would not execute exit if echo failed... this is poor sh coding.
> + if [ -z "${sec_info}" ]; then
> + echo "${err_no_mfs} $1"
> + exit 1
> + fi
This fixes that possible, though highly unlikely, issue.
It is also much easier to read and understand!
>
> sec_size=`echo "${sec_info}" | awk '/sh_size/ {print $2}' 2>/dev/null`
> sec_start=`echo "${sec_info}" | \
> @@ -78,7 +84,10 @@ else
> fi
>
> # If the mfs section size is smaller than the mfs image - bail.
> -[ ${sec_size} -lt ${mfs_size} ] && echo "MFS image too large" && exit 1
> +if [ ${sec_size} -lt ${mfs_size} ]; then
> + echo "MFS image too large"
> + exit 1
> +fi
>
> # Dump the mfs image into the mfs section
> dd if=$2 ibs=8192 of=$1 obs=${sec_start} oseek=1 conv=notrunc 2> /dev/null && \
>
>
--
Rod Grimes rgrimes at freebsd.org
More information about the svn-src-all
mailing list