X-Git-Url: https://git.hcoop.net/clinton/abcde.git/blobdiff_plain/98a4933cc10a453fabab236fec912a51ad9bcf5a..f37b07d0726802b2c026c2bd40bf54b60c26a693:/abcde diff --git a/abcde b/abcde index 281d9d3..5b9847a 100755 --- a/abcde +++ b/abcde @@ -1364,13 +1364,11 @@ do_discid () disktool -u ${CDROM#/dev/} fi if [ "$CDROMREADERSYNTAX" = "flac" ] ; then - if [ "$TRACKINFO" = "" ]; then + if $METAFLAC $METAFLACOPTS --export-cuesheet-to=- $CDROM > /dev/null 2>&1 ; then TRACKINFO=$($METAFLAC $METAFLACOPTS --export-cuesheet-to=- $CDROM | $CUE2DISCID) else - if $METAFLAC $METAFLACOPTS --export-cuesheet-to=- $CDROM > /dev/null 2>&1 ; then :; else - log error "the input flac file does not contain a cuesheet." - exit 1 - fi + log error "the input flac file does not contain a cuesheet." + exit 1 fi else case "$CDDBMETHOD" in @@ -1554,13 +1552,22 @@ do_discid () if checkstatus cuefile > /dev/null 2>&1 ; then :; else CUEFILE=cue-$(echo "$TRACKINFO" | cut -f1 -d' ').txt vecho "Creating cue file..." - if $CUEREADER $CUEREADEROPTS > "$ABCDETEMPDIR/$CUEFILE"; then - echo cuefile=$CUEFILE >> "$ABCDETEMPDIR/status" - else - log warning "reading the CUE sheet with mkcue is still considered experimental" - log warning "and there was a problem with the CD reading. abcde will continue," - log warning "but consider reporting the problem to the abcde author" - fi + case $CDROMREADERSYNTAX in + flac) + if $METAFLAC --export-cuesheet-to=- $CDROM > "$ABCDETEMPDIR/$CUEFILE"; then :; else + log warning "the input flac file does not contain a cuesheet." + fi + ;; + *) + if $CUEREADER $CUEREADEROPTS > "$ABCDETEMPDIR/$CUEFILE"; then + echo cuefile=$CUEFILE >> "$ABCDETEMPDIR/status" + else + log warning "reading the CUE sheet with mkcue is still considered experimental" + log warning "and there was a problem with the CD reading. abcde will continue," + log warning "but consider reporting the problem to the abcde author" + fi + ;; + esac fi fi # If we got the CDPARANOIA status and it is not recorded, save it now @@ -2272,12 +2279,12 @@ do_cdread () # the user said # We need the first and last track for cdda2wav FIRSTTRACK=$2 - LASTTRACK=$3 + LASTTRACK=$(expr $3 + 0) UTRACKNUM=$FIRSTTRACK case "$CDROMREADERSYNTAX" in flac) READTRACKNUMS="$FIRSTTRACK.1-$(($LASTTRACK + 1)).0" ;; cdparanoia) READTRACKNUMS="$FIRSTTRACK-$LASTTRACK" ;; - cdda2wav) READTRACKNUMS="$FIRSTTRACK+$LASTRACK" ;; + cdda2wav) READTRACKNUMS="$FIRSTTRACK+$LASTTRACK" ;; *) echo "abcde error: $CDROMREADERSYNTAX does not support ONETRACK mode" exit 1 ;; esac @@ -3330,6 +3337,8 @@ case "$CDDBMETHOD" in esac if [ "$DOCDDB" = "y" ]; then + # start with a sane default: + CDDBLOCALSTATUS=notfound if [ $CDDBUSELOCAL = "y" ]; then do_localcddb fi