diff --git a/libisoburn/trunk/xorriso/write_run.c b/libisoburn/trunk/xorriso/write_run.c index 09e9c202..7127d7dd 100644 --- a/libisoburn/trunk/xorriso/write_run.c +++ b/libisoburn/trunk/xorriso/write_run.c @@ -760,12 +760,13 @@ int Xorriso_make_iso_write_opts(struct XorrisO *xorriso, IsoImage *image, relax= xorriso->relax_compliance; if(image != NULL) is_bootable= iso_image_get_boot_image(image, NULL, NULL, NULL); - if(xorriso->patch_isolinux_image & 1) { - if(is_bootable == 1) - relax|= isoburn_igopt_allow_full_ascii; - else if(xorriso->keep_boot_image && is_bootable == 1) - relax|= isoburn_igopt_allow_full_ascii; - } + + /* xorriso->patch_isolinux_image gets reset in Xorriso_attach_boot_image() + So this applies only to -boot_image ... "patch" or "keep". + >>> Better would be to analyze and keep the relaxations of the loaded image. + */ + if((xorriso->patch_isolinux_image & 1) && is_bootable == 1) + relax|= isoburn_igopt_allow_full_ascii; out_cs= xorriso->out_charset; if(out_cs == NULL) @@ -2633,6 +2634,10 @@ int Xorriso_set_isolinux_options(struct XorrisO *xorriso, {ret= 0; goto ex;} continue; } + + /* <<< From here on only with first boot image and + deprecated builtin isohybrid MBR */ + if(xorriso->boot_image_isohybrid == 3) { make_isohybrid_mbr= 1; } else { diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index c7417adb..baff8e4b 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2014.12.29.105732" +#define Xorriso_timestamP "2014.12.29.142036"