Re-enabled overwriteable pseudo-pseudo-SAO with unpredicted track size

This commit is contained in:
Thomas Schmitt 2007-02-22 07:26:41 +00:00
parent fa6849374a
commit 8182be7824
4 changed files with 9 additions and 6 deletions

View File

@ -1 +1 @@
#define Cdrskin_timestamP "2007.02.21.205244"
#define Cdrskin_timestamP "2007.02.22.072700"

View File

@ -1677,7 +1677,7 @@ int burn_disc_get_multi_caps(struct burn_drive *d, enum burn_write_types wt,
d->best_format_size - 2048;
}
}
o->might_do_sao = 3;
o->might_do_sao = 4;
o->might_do_tao = 2;
o->advised_write_mode = BURN_WRITE_TAO;
} else /* unknown media */

View File

@ -1518,7 +1518,8 @@ struct burn_multi_caps {
off_t start_range_high;
/** Potential availability of write modes
3= allowed but not to be chosen automatically
4= needs no size prediction, not to be chosen automatically
3= needs size prediction, not to be chosen automatically
2= available, no size prediction necessary
1= available, needs exact size prediction
0= not available

View File

@ -241,7 +241,8 @@ no_caps:;
strcat(reasons, "appended session capability lacking, ");
if (demands.multi_track && !caps->multi_track)
strcat(reasons, "multi track capability lacking, ");
if (demands.unknown_track_size == 1)
if (demands.unknown_track_size == 1 &&
(caps->might_do_sao == 1 || caps->might_do_sao == 3))
strcat(reasons, "track size unpredictable, ");
if (demands.mixed_mode)
strcat(reasons, "tracks of different modes mixed, ");
@ -256,10 +257,11 @@ no_caps:;
if (strcmp(reason_pt, "SAO: ") != 0)
goto no_sao;
would_do_sao = 1;
if (demands.unknown_track_size == 2 && !(flag & 1)) {
if (demands.unknown_track_size == 2 && (!(flag & 1)) &&
(caps->might_do_sao == 1 || caps->might_do_sao == 3)) {
strcat(reasons, "would have to use default track sizes, ");
goto no_sao;
} else if (caps->might_do_sao == 3 && !(flag & 1))
} else if (caps->might_do_sao >= 3 && !(flag & 1))
goto try_tao;
do_sao:;
if (!(flag & 1))