Fix option parsing for multiple output formats
authorSteve McIntyre <steve@einval.com>
Sun, 26 Oct 2014 05:13:36 +0000 (05:13 +0000)
committerSteve McIntyre <steve@einval.com>
Sun, 26 Oct 2014 05:13:36 +0000 (05:13 +0000)
Thanks to matthias.andree@gmx.de for the patch. Closes issue 115.

abcde
changelog

diff --git a/abcde b/abcde
index 363875a..0783213 100755 (executable)
--- a/abcde
+++ b/abcde
@@ -3792,8 +3792,9 @@ case "$NORMALIZERSYNTAX" in
 esac
 
 # Allow -o OUTPUT(1):OPTIONS(1),...,OUTPUT(N):OPTIONS(N) mode of operation
-if echo "$OUTPUTTYPE" | grep ":" > /dev/null 2>&1 ; then
-       for OUTPUT in "$(echo "$OUTPUTTYPE" | tr \  \|| tr , \ | tr \| \ )"; do
+case "$OUTPUTTYPE" in *:*)
+       for OUTPUT in $(echo "$OUTPUTTYPE" | tr \  \|| tr , \ ); do
+               OUTPUT="$(echo "$OUTPUT" | tr \| \ )"
                case "$OUTPUT" in
                        vorbis:*|ogg:*) OGGENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
                        opus:*) OPUSENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
@@ -3809,7 +3810,8 @@ if echo "$OUTPUTTYPE" | grep ":" > /dev/null 2>&1 ; then
                TEMPOUTPUTTYPE="${TEMPOUTPUTTYPE:+$TEMPOUTPUTTYPE,}$TEMPOUTPUT"
        done
        OUTPUTTYPE="$TEMPOUTPUTTYPE"
-fi
+       ;;
+esac
 
 # If nothing has been specified, use oggenc for oggs and lame for mp3s and flac
 # for flacs and speexenc for speex and mpcenc for mpcs and faac for m4as
index cfcc551..cd0bf97 100644 (file)
--- a/changelog
+++ b/changelog
@@ -18,6 +18,10 @@ abcde 2.5.5 UNRELEASED
     produce working cue files. Closes issue 78.
   * Remove no-op -q option. Closes issue 106. Thanks to vskytta for the
     patch.
+  * Fix issue 112: perl encoding pragma deprecation. Thanks to Alex Corrie
+    for the patch.
+  * Fix option parsing for multiple output formats. Thanks to
+    matthias.andree@gmx.de for the patch. Closes issue 115.
 
  -- Steve McIntyre <93sam@debian.org>  Sat, 25 Oct 2014 12:11:16 -0700