Bug fix: -as mkisofs -C attempts to read volume header of blank media

This commit is contained in:
Thomas Schmitt 2011-03-01 14:51:17 +00:00
parent c01f6fa3bf
commit 01d9e0c7bc
2 changed files with 6 additions and 3 deletions

View File

@ -6,7 +6,7 @@
*/ */
/* libburn wrappers for libisoburn /* libburn wrappers for libisoburn
Copyright 2007 - 2010 Thomas Schmitt, <scdbackup@gmx.net> Copyright 2007 - 2011 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later. Provided under GPL version 2 or later.
*/ */
@ -1723,6 +1723,7 @@ int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
static int max_mode_names= 4; static int max_mode_names= 4;
regex_t re; regex_t re;
regmatch_t match[1]; regmatch_t match[1];
enum burn_disc_status s;
ret= isoburn_find_emulator(&o, d, 0); ret= isoburn_find_emulator(&o, d, 0);
if(ret<0) if(ret<0)
@ -1783,7 +1784,9 @@ not_found:;
} else if(adr_mode==3) { } else if(adr_mode==3) {
o->fabricated_msc1= adr_num; o->fabricated_msc1= adr_num;
if((flag & 1) && o->fabricated_msc1 >= 16) { s= isoburn_disc_get_status(d);
if((flag & 1) && o->fabricated_msc1 >= 16
&& (s == BURN_DISC_FULL || s == BURN_DISC_APPENDABLE)) {
/* adr_num is possibly 16 blocks too high */ /* adr_num is possibly 16 blocks too high */
ret= isoburn_read_iso_head(d, o->fabricated_msc1, &size,volid, 1|(1<<14)); ret= isoburn_read_iso_head(d, o->fabricated_msc1, &size,volid, 1|(1<<14));
if(ret==2) if(ret==2)

View File

@ -1 +1 @@
#define Xorriso_timestamP "2011.02.28.190842" #define Xorriso_timestamP "2011.03.01.145125"