From 8bda52783b89533b431b9883d507398044885bcc Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Wed, 22 Dec 2010 08:58:49 +0100 Subject: input/cdda: support reading the whole disc --- src/input/cdda_input_plugin.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) (limited to 'src/input/cdda_input_plugin.c') diff --git a/src/input/cdda_input_plugin.c b/src/input/cdda_input_plugin.c index 63a718c8d..df570190f 100644 --- a/src/input/cdda_input_plugin.c +++ b/src/input/cdda_input_plugin.c @@ -217,17 +217,15 @@ input_cdda_open(const char *uri, GError **error_r) return NULL; } - if (i->trackno == -1) { - g_set_error(error_r, cdda_quark(), 0, - "Invalid track # in %s", uri); - input_cdda_close(&i->base); - return NULL; - } - - i->lsn_relofs = 0; - i->lsn_from = cdio_get_track_lsn( i->cdio, i->trackno ); - i->lsn_to = cdio_get_track_last_lsn( i->cdio, i->trackno ); + + if (i->trackno >= 0) { + i->lsn_from = cdio_get_track_lsn(i->cdio, i->trackno); + i->lsn_to = cdio_get_track_last_lsn(i->cdio, i->trackno); + } else { + i->lsn_from = 0; + i->lsn_to = cdio_get_disc_last_lsn(i->cdio); + } i->para = cdio_paranoia_init(i->drv); -- cgit v1.2.3