diff --git a/libburn/mmc.c b/libburn/mmc.c index d3bd5f2..f36cdc9 100644 --- a/libburn/mmc.c +++ b/libburn/mmc.c @@ -824,6 +824,7 @@ int mmc_setup_drive(struct burn_drive *d) d->get_nwa = mmc_get_nwa; d->close_disc = mmc_close_disc; d->close_session = mmc_close_session; + d->close_track_session = mmc_close; d->read_buffer_capacity = mmc_read_buffer_capacity; /* ts A61020 */ diff --git a/libburn/sg-freebsd.c b/libburn/sg-freebsd.c index fcdf43f..c2d92ef 100644 --- a/libburn/sg-freebsd.c +++ b/libburn/sg-freebsd.c @@ -481,6 +481,7 @@ static void enumerate_common(char *fname, int bus_no, int host_no, out.get_nwa = mmc_get_nwa; out.close_disc = mmc_close_disc; out.close_session = mmc_close_session; + out.close_track_session = mmc_close; out.read_buffer_capacity = mmc_read_buffer_capacity; out.idata = malloc(sizeof(struct burn_scsi_inquiry_data)); out.idata->valid = 0; diff --git a/libburn/transport.h b/libburn/transport.h index fa55030..5ef987e 100644 --- a/libburn/transport.h +++ b/libburn/transport.h @@ -189,6 +189,10 @@ struct burn_drive void (*close_disc) (struct burn_write_opts * o); void (*close_session) ( struct burn_write_opts * o); + /* ts A61029 */ + void (*close_track_session) ( struct burn_write_opts * o, + int session, int track); + int (*test_unit_ready) (struct burn_drive * d); void (*probe_write_modes) (struct burn_drive * d); struct params params;