[pacman-dev] [PATCH v2 1/1] contrib: Unify quoting in error messages
Dave Reisner
d at falconindy.com
Thu Sep 5 14:28:27 EDT 2013
On Thu, Sep 05, 2013 at 01:54:41PM -0400, Aaron Lindsay wrote:
> This fixes error messages to display the contents of variables rather
> than the variable name by replacing backticks with single quotes (m4
> eats backticks). It also removes $"" localization from error messages to
> eliminate security holes.
>
> For instance, `rankmirrors nonexistent_file' will now display:
> 'nonexistent_file' does not exist.
> rather than:
> $1 does not exist.
>
> Signed-off-by: Aaron Lindsay <aaron at aclindsay.com>
> ---
> contrib/bacman.sh.in | 2 +-
> contrib/paclog-pkglist.sh.in | 2 +-
> contrib/rankmirrors.sh.in | 10 +++++-----
> contrib/updpkgsums.sh.in | 2 +-
> 4 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/contrib/bacman.sh.in b/contrib/bacman.sh.in
> index 5435e40..33e3920 100644
> --- a/contrib/bacman.sh.in
> +++ b/contrib/bacman.sh.in
> @@ -124,7 +124,7 @@ fi
>
> if [[ ! -d $pkg_dir ]]; then
> error "package %s is found in pacman database," "${pkg_name}"
> - plain " but \`%s' is not a directory" "${pkg_dir}"
> + plain " but '%s' is not a directory" "${pkg_dir}"
> exit 1
> fi
>
> diff --git a/contrib/paclog-pkglist.sh.in b/contrib/paclog-pkglist.sh.in
> index 9b3abad..b6f4ffe 100755
> --- a/contrib/paclog-pkglist.sh.in
> +++ b/contrib/paclog-pkglist.sh.in
> @@ -43,7 +43,7 @@ if [[ $1 ]]; then
> version
> exit 0
> elif [[ ! -e $logfile ]]; then
> - printf $"target not found: %s\n" "$1"
> + printf "target not found: '%s'\n" "$1"
I suppose this was intentional because we're reusing pacman's
translations (which we, for some reason, trust). Notice the TEXTDOMAIN
and TEXTDOMAINDIR vars at the top of the script....
> exit 1
> fi
> fi
> diff --git a/contrib/rankmirrors.sh.in b/contrib/rankmirrors.sh.in
> index 875a143..5555edf 100644
> --- a/contrib/rankmirrors.sh.in
> +++ b/contrib/rankmirrors.sh.in
> @@ -127,7 +127,7 @@ while [[ $1 ]]; do
> verbose) VERBOSE=1 ; shift ;;
> url) CHECKURL=1; [[ $2 ]] || err "Must specify url."; URL="$2"; shift 2;;
> repo) [[ $2 ]] || err "Must specify repo name."; TARGETREPO="$2"; shift 2;;
> - *) err "\`$1' is an invalid argument."
> + *) err "'$1' is an invalid argument."
> esac
> elif [[ ${1:0:1} = - ]]; then
>
> @@ -146,7 +146,7 @@ while [[ $1 ]]; do
> u) CHECKURL=1; [[ $2 ]] || err "Must specify url."; URL="$2"; snum=2;;
> r) [[ $2 ]] || err "Must specify repo name."; TARGETREPO="$2"; snum=2;;
> n) [[ $2 ]] || err "Must specify number." ; NUM="$2" ; snum=2;;
> - *) err "\`-$1' is an invald argument." ;;
> + *) err "'$1' is an invalid argument." ;;
> esac
> done
> shift $snum
> @@ -157,7 +157,7 @@ while [[ $1 ]]; do
> [[ $linearray ]] || err "File is empty."
> shift
> else
> - err "\`$1' does not exist."
> + err "'$1' does not exist."
> fi
> done
>
> @@ -169,7 +169,7 @@ done
> # Single url handling
> if [[ $CHECKURL ]]; then
> url="$(getfetchurl "$URL")"
> - [[ $url = fail ]] && err "url \`$URL' is malformed."
> + [[ $url = fail ]] && err "url '$URL' is malformed."
> [[ $VERBOSE ]] && echo "Testing $url..."
> time=$(gettime "$url")
> echo "$URL : $time"
> @@ -193,7 +193,7 @@ for line in "${linearray[@]}"; do
> server="${line#*= }"
> server="${server%%#*}"
> url="$(getfetchurl "$server")"
> - [[ $url = fail ]] && err "url \`$URL' is malformed."
> + [[ $url = fail ]] && err "url '$URL' is malformed."
> time=$(gettime "$url")
> timesarray+=("$time $server")
>
> diff --git a/contrib/updpkgsums.sh.in b/contrib/updpkgsums.sh.in
> index ffea96b..4d35357 100644
> --- a/contrib/updpkgsums.sh.in
> +++ b/contrib/updpkgsums.sh.in
> @@ -67,7 +67,7 @@ fi
>
> # Check $PWD/ for permission to unlink the $buildfile and write a new one
> if [[ ! -w . ]]; then
> - printf $'==> ERROR: No write permission in `%s\'\n' "$PWD"
> + printf "==> ERROR: No write permission in '%s'\n" "$PWD"
> exit 1
> fi
>
> --
> 1.8.4
>
>
More information about the pacman-dev
mailing list