On Sat, 24 Dec 2011, Petter Reinholdtsen wrote:
> [Cristian Ionescu-Idbohrn]
> > Please find attached a series of 21 patches, attempt to cleanup,
> > robustify and improve performance and maintability of that script
> > (triggerd by bug#625726.
>
> I noticed you removed quite a lot of quotes around variables, which in
> my view is to make the code less robust.  Why do you propose to remove
> quotes around constructs like this:
>
> > -           case "$FSTYPE" in
> > +           case $FSTYPE in
>
> I try to always put quotes around such variables as far of an effort to
> do defensive programming, in case a space sneak into its value some time
> in the future.

Because 'case' is special and does not require quotes.
Everything between 'case' and 'in' is tested (even the empty string).
Consider this example (put your prefered shell on the shebang line):

---8<---
#!/bin/sh

set -eu
#set -x

foo="the quick brown fox jumps over the lazy dog"
bar=

case $foo in
        *fox*)
                echo "matched '$foo'"
                ;;
        *)
                echo missed foo
                ;;
esac

case $bar in
        '')
                echo "matched empty '$bar'"
                ;;
        *)
                echo missed bar
                ;;
esac
--->8---


Cheers,

-- 
Cristian



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to