Made DVD ignore CD write modes of drive. Made TAO default for DVD+RW.
This commit is contained in:
parent
ff3b1102cb
commit
f12ef8b0e1
@ -4269,22 +4269,27 @@ int Cdrskin_activate_write_mode(struct CdrskiN *skin, enum burn_disc_status s,
|
||||
int flag)
|
||||
{
|
||||
int ok, was_still_default= 0, block_type_demand,track_type,sector_size, i;
|
||||
struct burn_drive_info *drive_info;
|
||||
struct burn_drive_info *drive_info = NULL;
|
||||
char profile_name[80];
|
||||
|
||||
profile_name[0]= 0;
|
||||
#ifdef Cdrskin_libburn_has_get_profilE
|
||||
if(skin->grabbed_drive)
|
||||
burn_disc_get_profile(skin->grabbed_drive,&i,profile_name);
|
||||
#endif
|
||||
|
||||
if(strcmp(skin->preskin->write_mode_name,"DEFAULT")==0) {
|
||||
was_still_default= 1;
|
||||
|
||||
#ifdef Cdrskin_allow_libburn_taO
|
||||
if(s == BURN_DISC_APPENDABLE) {
|
||||
strcpy(skin->preskin->write_mode_name,"TAO");
|
||||
|
||||
was_still_default= 2; /*<<< prevents trying of SAO if drive dislikes TAO*/
|
||||
|
||||
} else
|
||||
#endif
|
||||
|
||||
} else if(strstr(profile_name,"DVD+RW")==profile_name) {
|
||||
strcpy(skin->preskin->write_mode_name,"TAO");
|
||||
} else {
|
||||
strcpy(skin->preskin->write_mode_name,"SAO");
|
||||
}
|
||||
}
|
||||
if(strcmp(skin->preskin->write_mode_name,"RAW/RAW96R")==0) {
|
||||
skin->write_type= BURN_WRITE_RAW;
|
||||
skin->block_type= BURN_BLOCK_RAW96R;
|
||||
@ -4308,6 +4313,7 @@ int Cdrskin_activate_write_mode(struct CdrskiN *skin, enum burn_disc_status s,
|
||||
ClN(printf("cdrskin_debug: WARNING : No drive selected with Cdrskin_activate_write_mode\n"));
|
||||
goto it_is_done;
|
||||
}
|
||||
drive_info= skin->drives+skin->driveno;
|
||||
|
||||
/* <<< this should become a libburn API function.The knowledge about TAO audio
|
||||
track block type is quite inappropriate here. It refers to a habit of
|
||||
@ -4315,9 +4321,13 @@ int Cdrskin_activate_write_mode(struct CdrskiN *skin, enum burn_disc_status s,
|
||||
the tracklist is rather cdrskin realm. (ponder ...)
|
||||
*/
|
||||
check_with_drive:;
|
||||
drive_info= skin->drives+skin->driveno;
|
||||
ok= 0;
|
||||
if(skin->write_type==BURN_WRITE_RAW)
|
||||
if(strstr(profile_name,"DVD")==profile_name) {
|
||||
|
||||
/* >>> drive_info does not reflect DVD capabilities yet */
|
||||
|
||||
ok= 1;
|
||||
} else if(skin->write_type==BURN_WRITE_RAW)
|
||||
ok= !!(drive_info->raw_block_types & BURN_BLOCK_RAW96R);
|
||||
else if(skin->write_type==BURN_WRITE_SAO)
|
||||
ok= !!(drive_info->sao_block_types & BURN_BLOCK_SAO);
|
||||
|
@ -1 +1 @@
|
||||
#define Cdrskin_timestamP "2006.12.24.142512"
|
||||
#define Cdrskin_timestamP "2006.12.24.154455"
|
||||
|
Loading…
Reference in New Issue
Block a user