Always quote the righthand side of expression when the == or != operator
is used, unless intended as a pattern.  Quoting bash(1):

When the == and != operators are used, the string to the right of the
operator is considered a pattern.  Any part of the pattern may be quoted
to force it to be matched as a string.

Signed-off-by: lolilolicon <[email protected]>
---
 scripts/makepkg.sh.in |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 86e74a6..cc06baa 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -414,7 +414,7 @@ download_file() {
        fi

        # rename the temporary download file to the final destination
-       if [[ $dlfile != $file ]]; then
+       if [[ $dlfile != "$file" ]]; then
                mv -f "$SRCDEST/$dlfile" "$SRCDEST/$file"
        fi
 }
@@ -1509,7 +1509,7 @@ check_sanity() {
        eval $(awk '/^[[:space:]]*provides=/,/\)/' "$BUILDFILE" | \
                sed -e "s/provides=/provides_list+=/" -e "s/#.*//" -e 's/\\$//')
        for i in ${provides_list[@]}; do
-               if [[ $i != ${i//</} || $i != ${i//>/} ]]; then
+               if [[ $i == *['<>']* ]]; then
                        error "$(gettext "%s array cannot contain comparison (< 
or >)
operators.")" "provides"
                        ret=1
                fi
@@ -1767,7 +1767,7 @@ devel_update() {
        #  _foo=pkgver
        #
        if [[ -n $newpkgver ]]; then
-               if [[ $newpkgver != $pkgver ]]; then
+               if [[ $newpkgver != "$pkgver" ]]; then
                        if [[ -f $BUILDFILE && -w $BUILDFILE ]]; then
                                @SEDINPLACE@ "s/^pkgver=[^ 
]*/pkgver=$newpkgver/" "$BUILDFILE"
                                @SEDINPLACE@ "s/^pkgrel=[^ ]*/pkgrel=1/" 
"$BUILDFILE"
-- 
1.7.6.4

Reply via email to