New -toc output line "Overburnt by :"

This commit is contained in:
Thomas Schmitt 2021-11-24 12:52:53 +01:00
parent 6b0bb9e630
commit e651cb5040
4 changed files with 17 additions and 4 deletions

View File

@ -1,7 +1,7 @@
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
Copyright 2007-2020 Thomas Schmitt, <scdbackup@gmx.net> Copyright 2007-2021 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later. Provided under GPL version 2 or later.
@ -1059,7 +1059,7 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
char *book_name; char *book_name;
int num_data_from_format= 0; int num_data_from_format= 0;
char *sno = NULL; char *sno = NULL;
int sno_len, i, is_bdr_pow= 0; int sno_len, i, is_bdr_pow= 0, overburn_blocks= 0;
ret= Xorriso_get_drive_handles(xorriso, &dinfo, &drive, ret= Xorriso_get_drive_handles(xorriso, &dinfo, &drive,
"on attempt to print Table Of Content", "on attempt to print Table Of Content",
@ -1238,7 +1238,11 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
goto ex; goto ex;
ret= burn_drive_get_start_end_lba(drive, &start_lba, &end_lba, 0); ret= burn_drive_get_start_end_lba(drive, &start_lba, &end_lba, 0);
if(s == BURN_DISC_FULL && ret == 1) { if(s == BURN_DISC_FULL && ret == 1) {
lba= end_lba - 2; if(lba > end_lba - 2) {
overburn_blocks= lba - end_lba + 2;
} else {
lba= end_lba - 2;
}
} else { } else {
if(ret == 1 && end_lba - 2 > lba) { if(ret == 1 && end_lba - 2 > lba) {
sprintf(xorriso->info_text, sprintf(xorriso->info_text,
@ -1261,6 +1265,10 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
sprintf(respt, "Media blocks : %d readable , %d %s , %d overall\n", sprintf(respt, "Media blocks : %d readable , %d %s , %d overall\n",
num_data, (int) num_free, num_free_text, lba); num_data, (int) num_free, num_free_text, lba);
Xorriso_toc_line(xorriso, flag & 8); Xorriso_toc_line(xorriso, flag & 8);
if(overburn_blocks > 0) {
sprintf(respt, "Overburnt by : %d blocks\n", overburn_blocks);
Xorriso_toc_line(xorriso, flag & 8);
}
} }
if(s == BURN_DISC_BLANK) { if(s == BURN_DISC_BLANK) {

View File

@ -2114,6 +2114,8 @@ int Xorriso_sieve_big(struct XorrisO *xorriso, int flag)
2, 0}, 2, 0},
{"Modif. Time :", 3, "Modif. Time : ", "", 1, { 0, -1, -1, -1, -1, -1}, {"Modif. Time :", 3, "Modif. Time : ", "", 1, { 0, -1, -1, -1, -1, -1},
1, 1}, 1, 1},
{"Overburnt by :", 3, "Overburnt by :", "", 1, { 0, -1, -1, -1, -1, -1},
2, 0},
{"PVD address :", 3, "PVD address :", "", 1, { 0, -1, -1, -1, -1, -1}, {"PVD address :", 3, "PVD address :", "", 1, { 0, -1, -1, -1, -1, -1},
1, 0}, 1, 0},
{"Preparer Id :", 3, "Preparer Id : ", "", 1, { 0, -1, -1, -1, -1, -1}, {"Preparer Id :", 3, "Preparer Id : ", "", 1, { 0, -1, -1, -1, -1, -1},

View File

@ -908,6 +908,9 @@ int Xorriso_sieve_dispose(struct XorrisO *xorriso, int flag);
"Modif. Time :" up to 1 result from -pvd_info "Modif. Time :" up to 1 result from -pvd_info
argv[0]= YYYYMMDDhhmmsscc argv[0]= YYYYMMDDhhmmsscc
(Note: prefix is "Modif. Time : ") (Note: prefix is "Modif. Time : ")
"Overburnt by :" up to 2 results from -toc
argv[0]= number of readable blocks beyond ATIP leadout
(Note: only reported with overburnt CD-RW)
"PVD address :" up to 1 result from -pvd_info "PVD address :" up to 1 result from -pvd_info
argv[0]= block address with "s" appended argv[0]= block address with "s" appended
"Preparer Id :" up to 1 result from -pvd_info "Preparer Id :" up to 1 result from -pvd_info

View File

@ -1 +1 @@
#define Xorriso_timestamP "2021.09.13.151337" #define Xorriso_timestamP "2021.11.24.115053"