Bug fix: -report_system_areas as_mkisofs misrepresented GPT with appended partition and forced boot flag
This commit is contained in:
parent
c4d66ecb19
commit
396d09946e
@ -1680,7 +1680,7 @@ static int Xorriso_scan_report_lines(struct XorrisO *xorriso,
|
||||
char *volid, *crt, *mdt, *ext, *eft, uuid[17], *uuid_time;
|
||||
char **app_pseudo_paths= NULL;
|
||||
struct tm tm_erg;
|
||||
int was_force_bootable= 0;
|
||||
int was_force_bootable= 0, have_mbr_force_bootable= 0;
|
||||
uint64_t gpt_bheader_block= 0;
|
||||
|
||||
struct mbr_par {
|
||||
@ -1755,6 +1755,8 @@ static int Xorriso_scan_report_lines(struct XorrisO *xorriso,
|
||||
} else if(strcmp(name, "MBR partition :") == 0) {
|
||||
if(num[0] > mbr_count)
|
||||
mbr_count= num[0];
|
||||
if(strcmp(textpt, "0x80 0x00 0 1") == 0)
|
||||
have_mbr_force_bootable= 1;
|
||||
|
||||
} else if(strcmp(name, "GPT partition name :") == 0) {
|
||||
if(num[0] > gpt_count)
|
||||
@ -2244,8 +2246,9 @@ static int Xorriso_scan_report_lines(struct XorrisO *xorriso,
|
||||
}
|
||||
|
||||
/* Check for isohybri-ish MBR and GPT mix */
|
||||
if(mbr_count == 1 && mbrpts[0].ptype == 0xee && have_protective_msdos) {
|
||||
/* real GPT is not -part_like_isohybrid */
|
||||
if((mbr_count == 1 || (mbr_count == 2 && have_mbr_force_bootable)) &&
|
||||
mbrpts[0].ptype == 0xee && have_protective_msdos) {
|
||||
/* real GPT (+/- mbr_force_bootable) is not -part_like_isohybrid */
|
||||
ret= 0;
|
||||
} else {
|
||||
ret= Xorriso_search_eltorito_lba(xorriso, et_imgs, elto_count,
|
||||
|
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2020.10.22.114038"
|
||||
#define Xorriso_timestamP "2020.10.24.121839"
|
||||
|
Loading…
Reference in New Issue
Block a user