diff --git a/cdrskin/cdrskin_timestamp.h b/cdrskin/cdrskin_timestamp.h index 4c3a063..b6c43d3 100644 --- a/cdrskin/cdrskin_timestamp.h +++ b/cdrskin/cdrskin_timestamp.h @@ -1 +1 @@ -#define Cdrskin_timestamP "2006.12.02.130631" +#define Cdrskin_timestamP "2006.12.02.201405" diff --git a/libburn/drive.c b/libburn/drive.c index bab5e56..8f1bd9a 100644 --- a/libburn/drive.c +++ b/libburn/drive.c @@ -201,8 +201,8 @@ int burn_drive_inquire_media(struct burn_drive *d) int burn_drive_grab(struct burn_drive *d, int le) { int errcode; - /* ts A61125 */ - int ret; + /* ts A61125 - A61202 */ + int ret, sose; if (!d->released) { burn_print(1, "can't grab - already grabbed\n"); @@ -225,8 +225,13 @@ int burn_drive_grab(struct burn_drive *d, int le) /* ts A61118 */ d->start_unit(d); + /* ts A61202 : gave bit1 of le a meaning */ + sose = d->silent_on_scsi_error; + if (!le) + d->silent_on_scsi_error = 1; /* ts A61125 : outsourced media state inquiry aspects */ ret = burn_drive_inquire_media(d); + d->silent_on_scsi_error = sose; return ret; } diff --git a/libburn/mmc.c b/libburn/mmc.c index f5a124d..225ff42 100644 --- a/libburn/mmc.c +++ b/libburn/mmc.c @@ -478,12 +478,15 @@ void mmc_read_disc_info(struct burn_drive *d) mmc_get_configuration(d); if ((d->current_profile != 0 || d->status != BURN_DISC_UNREADY) && ! d->current_is_cd_profile) { - sprintf(msg, "Unsuitable media detected. Profile %4.4Xh %s", - d->current_profile, d->current_profile_text); - libdax_msgs_submit(libdax_messenger, d->global_index, - 0x0002011e, - LIBDAX_MSGS_SEV_SORRY, LIBDAX_MSGS_PRIO_HIGH, - msg, 0,0); + if (!d->silent_on_scsi_error) { + sprintf(msg, + "Unsuitable media detected. Profile %4.4Xh %s", + d->current_profile, d->current_profile_text); + libdax_msgs_submit(libdax_messenger, d->global_index, + 0x0002011e, + LIBDAX_MSGS_SEV_SORRY, LIBDAX_MSGS_PRIO_HIGH, + msg, 0,0); + } d->status = BURN_DISC_UNSUITABLE; return; }