|
|
|
@ -616,7 +616,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv, |
|
|
|
|
"" |
|
|
|
|
}; |
|
|
|
|
static char arg3_options[][41]= { |
|
|
|
|
"-append_partition", |
|
|
|
|
"-append_partition", "-hfsplus-file-creator-type", |
|
|
|
|
"" |
|
|
|
|
}; |
|
|
|
|
static char final_options[][41]= { |
|
|
|
@ -732,6 +732,8 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag) |
|
|
|
|
" -hide-hfsplus GLOBFILE Hide HFS+ file", |
|
|
|
|
" -hide-hfsplus-list FILE File with list of HFS+ files to hide", |
|
|
|
|
" -hfsplus Generate HFS+ filesystem", |
|
|
|
|
" -hfsplus-file-creator-type CREATOR TYPE iso_rr_path", |
|
|
|
|
" Attach creator and type to a File.", |
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -1504,8 +1506,17 @@ illegal_c:; |
|
|
|
|
} else if(strcmp(argpt, "-joliet-long")==0) { |
|
|
|
|
Xorriso_relax_compliance(xorriso, |
|
|
|
|
"joliet_long_paths:joliet_long_names", 0); |
|
|
|
|
} else if(strcmp(argpt, "-hfsplus")==0) { |
|
|
|
|
} else if(strcmp(argpt, "-hfsplus") == 0) { |
|
|
|
|
xorriso->do_hfsplus= 1; |
|
|
|
|
} else if(strcmp(argpt, "-hfsplus-file-creator-type") == 0) { |
|
|
|
|
if(i + 3 >= argc) |
|
|
|
|
goto not_enough_args; |
|
|
|
|
/* Memorize command until all pathspecs are processed */ |
|
|
|
|
delay_opt_list[delay_opt_count++]= i; |
|
|
|
|
if(argv[i] != argpt) |
|
|
|
|
delay_opt_list[delay_opt_count - 1]|= 1<<31; |
|
|
|
|
i+= 3; |
|
|
|
|
|
|
|
|
|
} else if(strcmp(argpt, "-graft-points")==0) { |
|
|
|
|
xorriso->allow_graft_points= 1; |
|
|
|
|
} else if(strcmp(argpt, "-path-list")==0 || |
|
|
|
@ -2068,15 +2079,14 @@ problem_handler_2:; |
|
|
|
|
if(option_d) |
|
|
|
|
Xorriso_relax_compliance(xorriso, "deep_paths:long_paths", 0); |
|
|
|
|
|
|
|
|
|
/* After all pathspecs are added: perform boot related options */ |
|
|
|
|
/* After all pathspecs are added: perform delayed options, mostly boot related
|
|
|
|
|
*/ |
|
|
|
|
for(j= 0; j < delay_opt_count; j++) { |
|
|
|
|
i= delay_opt_list[j] & ~(1 << 31); |
|
|
|
|
if(delay_opt_list[j] & (1 << 31)) |
|
|
|
|
argpt= argv[i] + 1; |
|
|
|
|
else |
|
|
|
|
argpt= argv[i]; |
|
|
|
|
if(ret <= 0) |
|
|
|
|
goto ex; |
|
|
|
|
if(strcmp(argpt, "-no-emul-boot")==0) { |
|
|
|
|
emul_boot= xorriso->boot_image_emul= 0; |
|
|
|
|
} else if(strcmp(argpt, "-hard-disk-boot")==0) { |
|
|
|
@ -2196,7 +2206,13 @@ problem_handler_2:; |
|
|
|
|
if(ret <= 0) |
|
|
|
|
goto ex; |
|
|
|
|
|
|
|
|
|
ret = Xorriso_option_boot_image(xorriso, "any", sfe, 0); |
|
|
|
|
ret= Xorriso_option_boot_image(xorriso, "any", sfe, 0); |
|
|
|
|
if(ret <= 0) |
|
|
|
|
goto problem_handler_boot; |
|
|
|
|
|
|
|
|
|
} else if(strcmp(argpt, "-hfsplus-file-creator-type") == 0) { |
|
|
|
|
ret= Xorriso_hfsplus_file_creator_type(xorriso, argv[i + 3], NULL, |
|
|
|
|
argv[i + 1], argv[i + 2], 0); |
|
|
|
|
if(ret <= 0) |
|
|
|
|
goto problem_handler_boot; |
|
|
|
|
|
|
|
|
|