diff --git a/devices/cddb.cpp b/devices/cddb.cpp index 72979dd7a..fb2fcec20 100644 --- a/devices/cddb.cpp +++ b/devices/cddb.cpp @@ -38,6 +38,7 @@ #include #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include +#include #elif defined(__linux__) #include #endif @@ -157,8 +158,8 @@ void Cddb::readDisc() if (0==ioctl(fd, CDIOREADTOCENTRY, &te)) { cddb_track_t *track = cddb_track_new(); if (track) { - cddb_track_set_frame_offset(track, te.cdte_addr.lba + SECONDS_TO_FRAMES(2)); - cddb_track_set_title(track, te.cdte_ctrl&CDROM_DATA_TRACK ? dataTrack().toUtf8().constData() : unknown.constData()); + cddb_track_set_frame_offset(track, te.entry.addr.lba + SECONDS_TO_FRAMES(2)); + cddb_track_set_title(track, te.entry.control&0x04 ? dataTrack().toUtf8().constData() : unknown.constData()); cddb_track_set_artist(track, unknown.constData()); cddb_disc_add_track(disc, track); } diff --git a/devices/musicbrainz.cpp b/devices/musicbrainz.cpp index 0fa9c552b..d1610c60c 100644 --- a/devices/musicbrainz.cpp +++ b/devices/musicbrainz.cpp @@ -54,6 +54,7 @@ #include #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include +#include #elif defined(__linux__) #include #endif @@ -170,7 +171,7 @@ void MusicBrainz::readDisc() for (int i=th.starting_track; i<=th.ending_track; i++) { te.track = i; if (0==ioctl(fd, CDIOREADTOCENTRY, &te)) { - tracks.append(Track(te.cdte_addr.lba + secondsToFrames(2), te.cdte_ctrl&CDROM_DATA_TRACK)); + tracks.append(Track(te.entry.addr.lba + secondsToFrames(2), te.entry.control&0x04)); } } te.track = 0xAA;