Reporting grub2_mbr= with -status -boot_image

This commit is contained in:
2013-04-14 17:46:29 +00:00
parent 44f9b65d9f
commit bf52974298
3 changed files with 38 additions and 14 deletions

View File

@ -2380,6 +2380,39 @@ bit1= do only report to fp
}
/*
bit0= do only report non-default settings
bit1= do only report to fp
*/
int Xorriso_boot_status_sysarea(struct XorrisO *xorriso, char *filter,
FILE *fp, int flag)
{
char *line, *form= "any", *spec= "system_area=";
int sa_type;
line= xorriso->result_line;
sa_type= (xorriso->system_area_options & 0xfc) >> 2;
if(sa_type != 0)
return(2);
if (xorriso->system_area_disk_path[0] == 0 && (flag & 1))
return(2);
if(xorriso->system_area_options & 1) {
form= "grub";
if(xorriso->system_area_options & (1 << 14))
spec= "grub2_mbr=";
} else if(xorriso->system_area_options & 2) {
form= "isolinux";
}
sprintf(line, "-boot_image %s %s", form, spec);
Text_shellsafe(xorriso->system_area_disk_path, line, 1);
strcat(line, "\n");
Xorriso_status_result(xorriso, filter, fp, flag & 2);
return(1);
}
int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
/*
bit0= do only report non-default settings
@ -2618,13 +2651,7 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
Xorriso_boot_image_status(xorriso, filter, fp, flag & 3);
is_default= (xorriso->system_area_disk_path[0] == 0);
sprintf(line,"-boot_image %s system_area=%s\n",
xorriso->system_area_disk_path[0] && (xorriso->system_area_options & 2)
? "isolinux" : "any",
Text_shellsafe(xorriso->system_area_disk_path, sfe, 0));
if(!(is_default && no_defaults))
Xorriso_status_result(xorriso,filter,fp,flag&2);
Xorriso_boot_status_sysarea(xorriso, filter, fp, flag & 3);
is_default= (xorriso->partition_offset == 0);
sprintf(line,"-boot_image any partition_offset=%lu\n",