cd_media = 1;
info(udev, "disk type %02x\n", header[8]);
+ info(udev, "hardware reported media status: %s\n", media_status[header[2] & 3]);
/* exclude plain CDROM, some fake cdroms return 0 for "blank" media here */
if (!cd_media_cd_rom)
}
determined:
- /* "other" is e. g. DVD-RAM, can't append sessions there either */
- if ((header[2] & 3) < 2)
+ /* "other" is e. g. DVD-RAM, can't append sessions there; DVDs in
+ * restricted overwrite mode can never append, only in sequential mode */
+ if ((header[2] & 3) < 2 && !cd_media_dvd_rw_ro)
cd_media_session_next = header[10] << 8 | header[5];
cd_media_session_count = header[9] << 8 | header[4];
cd_media_track_count = header[11] << 8 | header[6];
goto print;
/* get session/track info */
- if (cd_media_toc(udev, fd) < 0)
- goto print;
+ cd_media_toc(udev, fd);
/* get writable media state */
- if (cd_media_info(udev, fd) < 0)
- goto print;
+ cd_media_info(udev, fd);
print:
printf("ID_CDROM=1\n");