cooked_interface.c: check for TOC-read error.

cd-paranoia.c: check that list of drives isn't just NULL list.
This commit is contained in:
rocky
2005-01-15 02:23:04 +00:00
parent 87c4b8d39b
commit a3bafd4ba7
2 changed files with 8 additions and 2 deletions

View File

@@ -1,5 +1,5 @@
/* /*
$Id: cooked_interface.c,v 1.9 2005/01/09 01:50:56 rocky Exp $ $Id: cooked_interface.c,v 1.10 2005/01/15 02:23:04 rocky Exp $
Copyright (C) 2004, 2005 Rocky Bernstein <rocky@panix.com> Copyright (C) 2004, 2005 Rocky Bernstein <rocky@panix.com>
Original interface.c Copyright (C) 1994-1997 Original interface.c Copyright (C) 1994-1997
@@ -31,6 +31,9 @@
#include "low_interface.h" #include "low_interface.h"
#include "utils.h" #include "utils.h"
/*! reads TOC via libcdio and returns the number of tracks in the disc.
0 is returned if there was an error.
*/
static int static int
cooked_readtoc (cdrom_drive_t *d) cooked_readtoc (cdrom_drive_t *d)
{ {
@@ -39,6 +42,9 @@ cooked_readtoc (cdrom_drive_t *d)
/* Save TOC Entries */ /* Save TOC Entries */
d->tracks = cdio_get_num_tracks(d->p_cdio) ; d->tracks = cdio_get_num_tracks(d->p_cdio) ;
if (CDIO_INVALID_TRACK == d->tracks) return 0;
i_track = cdio_get_first_track_num(d->p_cdio); i_track = cdio_get_first_track_num(d->p_cdio);
for ( i=0; i < d->tracks; i++) { for ( i=0; i < d->tracks; i++) {

View File

@@ -773,7 +773,7 @@ main(int argc,char *argv[])
CDIO_FS_AUDIO, CDIO_FS_AUDIO,
false, false,
&driver_id); &driver_id);
if (ppsz_cd_drives) { if (ppsz_cd_drives && *ppsz_cd_drives) {
d=cdda_identify(*ppsz_cd_drives,verbose, NULL); d=cdda_identify(*ppsz_cd_drives,verbose, NULL);
} else { } else {
report("\nUnable find or access a CD-ROM drive with an audio CD" report("\nUnable find or access a CD-ROM drive with an audio CD"