Experimentally enabled burning to BURN_DISC_APPENDABLE (tested with TAO only)

This commit is contained in:
2006-11-09 19:29:39 +00:00
parent 2606441e3e
commit 1082e7df20
4 changed files with 19 additions and 6 deletions

View File

@ -740,6 +740,7 @@ void burn_read_opts_free(struct burn_read_opts *opts);
*/
void burn_disc_erase(struct burn_drive *drive, int fast);
/* ts A61109 : this is defunct */
/** Read a disc from the drive and write it to an fd pair. The drive must be
grabbed successfully BEFORE calling this function. Always ensure that the
drive reports a status of BURN_DISC_FULL before calling this function.
@ -748,10 +749,9 @@ void burn_disc_erase(struct burn_drive *drive, int fast);
*/
void burn_disc_read(struct burn_drive *drive, const struct burn_read_opts *o);
/** Write a disc in the drive. The drive must be grabbed successfully BEFORE
/** Write a disc in the drive. The drive must be grabbed successfully before
calling this function. Always ensure that the drive reports a status of
BURN_DISC_BLANK or BURN_STATUS_FULL (to append a new session to the
disc) before calling this function.
BURN_DISC_BLANK before calling this function.
@param o The options for the writing operation.
@param disc The struct burn_disc * that described the disc to be created
*/

View File

@ -334,11 +334,20 @@ struct cue_sheet *burn_create_toc_entries(struct burn_write_opts *o,
/* ts A61009 */
/* a ssert(d->toc_entry == NULL); */
if (d->toc_entry != NULL) {
/* ts A61109 : this happens with appendable CDs
>>> Open question: is the existing TOC needed ? */
/* ts A61109 : for non-SAO, this sheet is thrown away later */
free((char *) d->toc_entry);
/*
libdax_msgs_submit(libdax_messenger,
d->global_index, 0x00020117,
LIBDAX_MSGS_SEV_FATAL, LIBDAX_MSGS_PRIO_HIGH,
"toc_entry of drive is already in use", 0, 0);
goto failed;
*/
}
d->toc_entry = calloc(d->toc_entries, sizeof(struct burn_toc_entry));