diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index e7023f6b..95bde662 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.12.08.154521" +#define Xorriso_timestamP "2008.12.10.093424" diff --git a/libisoburn/trunk/xorriso/xorrisoburn.c b/libisoburn/trunk/xorriso/xorrisoburn.c index 3a544b27..f0347616 100644 --- a/libisoburn/trunk/xorriso/xorrisoburn.c +++ b/libisoburn/trunk/xorriso/xorrisoburn.c @@ -4565,6 +4565,11 @@ int Xorriso_format_media(struct XorrisO *xorriso, int flag) return(2); } + } else if(current_profile == 0x41) { /* BD-R SRM */ + mode_flag= 6; /* format to default payload size */ + if(flag&1) + mode_flag|= (1<<6); + } else if(current_profile == 0x43) { /* BD-RE */ mode_flag= 6; /* format to default payload size */ if(flag&1) @@ -4667,11 +4672,18 @@ int Xorriso_blank_as_needed(struct XorrisO *xorriso, int flag) return(ret); did_work= (ret == 1); } - } else if(current_profile == 0x14 && (flag&4)) { /* DVD-RW sequential */ + } else if(current_profile == 0x14 && (flag&4)) { /* DVD-RW sequential */ ret= Xorriso_format_media(xorriso, 0); if(ret <= 0) return(ret); did_work= (ret == 1); + } else if(current_profile == 0x41) { /* BD-R SRM */ + if(!is_formatted) { + ret= Xorriso_format_media(xorriso, 1); + if(ret <= 0) + return(ret); + did_work= (ret == 1); + } } disc_state = isoburn_disc_get_status(drive);