From 3f447e940ff14052e4367e176f4d5a7f107d18bf Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sun, 10 Mar 2013 19:34:09 +0000 Subject: [PATCH] Improved interaction of -as mkisofs command with other commands --- libisoburn/trunk/xorriso/base_obj.c | 3 + libisoburn/trunk/xorriso/emulators.c | 49 ++++----- libisoburn/trunk/xorriso/opts_a_c.c | 3 + libisoburn/trunk/xorriso/write_run.c | 7 +- libisoburn/trunk/xorriso/xorriso.1 | 12 ++- libisoburn/trunk/xorriso/xorriso.info | 108 ++++++++++--------- libisoburn/trunk/xorriso/xorriso.texi | 12 ++- libisoburn/trunk/xorriso/xorriso_private.h | 3 + libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- 9 files changed, 116 insertions(+), 83 deletions(-) diff --git a/libisoburn/trunk/xorriso/base_obj.c b/libisoburn/trunk/xorriso/base_obj.c index 51ddc8ac..4a4851d8 100644 --- a/libisoburn/trunk/xorriso/base_obj.c +++ b/libisoburn/trunk/xorriso/base_obj.c @@ -134,6 +134,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) strcpy(m->list_delimiter, "--"); m->ino_behavior= 7; m->iso_level= 3; + m->iso_level_is_default= 1; m->do_joliet= 0; m->do_hfsplus= 0; m->do_fat= 0; @@ -148,6 +149,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) m->scdbackup_tag_written[0]= 0; m->scdbackup_tag_listname[0]= 0; m->relax_compliance= 0; + m->allow_dir_id_ext_dflt= 1; m->rr_reloc_dir[0]= 0; m->rr_reloc_flags= 1; m->untranslated_name_len= 0; @@ -241,6 +243,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) m->boot_image_bin_path[0]= 0; m->boot_image_bin_form[0]= 0; m->boot_image_emul= 0; + m->boot_emul_default= 1; m->boot_image_load_size= 4 * 512; /* hearsay out of libisofs/demo/iso.c */ memset(m->boot_id_string, 0, sizeof(m->boot_id_string)); memset(m->boot_selection_crit, 0, sizeof(m->boot_selection_crit)); diff --git a/libisoburn/trunk/xorriso/emulators.c b/libisoburn/trunk/xorriso/emulators.c index ed56bf22..a99e50d5 100644 --- a/libisoburn/trunk/xorriso/emulators.c +++ b/libisoburn/trunk/xorriso/emulators.c @@ -703,20 +703,13 @@ no_volunteer:; } -int Xorriso_genisofs_add_boot(struct XorrisO *xorriso, char *whom, - int *option_b, int *emul_boot, int flag) +int Xorriso_genisofs_add_boot(struct XorrisO *xorriso, int flag) { int ret; - if(*option_b) - xorriso->boot_image_emul= *emul_boot; - else - xorriso->boot_image_emul= 0; ret= Xorriso_attach_boot_image(xorriso, 0); if(ret <= 0) xorriso->boot_image_bin_path[0]= 0; - *option_b= 0; - *emul_boot= 2; return(ret); } @@ -1095,9 +1088,10 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom, int argc, char **argv, int flag) { int ret, i, j, was_path= 0, was_other_option= 0, mem_graft_points, mem; - int do_print_size= 0, fd, idx, iso_level= 1, emul_boot= 2; - int option_b= 0, was_failure= 0, fret, lower_r= 0, zero= 0; - int dir_mode= -1, file_mode= -1, count, partition_number, allow_dir_id_ext= 1; + int do_print_size= 0, fd, idx, iso_level= -1; + int was_failure= 0, fret, lower_r= 0, zero= 0; + int dir_mode= -1, file_mode= -1, count, partition_number; + int allow_dir_id_ext= -1; int root_seen= 0, do_md5_mem, option_d= 0, arg_count; mode_t mode_and, mode_or; int with_boot_image= 0, with_cat_path= 0, with_emul_toc= 0; @@ -2075,10 +2069,14 @@ rr_reloc_dir:; /* Enforce odd mkisofs defaults on first pathspec */ xorriso->pacifier_style= 1; + if(xorriso->allow_dir_id_ext_dflt && allow_dir_id_ext < 0) + allow_dir_id_ext= 1; if(allow_dir_id_ext == 1) { Xorriso_relax_compliance(xorriso, "allow_dir_id_ext", 0); allow_dir_id_ext= 2; } + if(xorriso->iso_level_is_default && iso_level < 0) + iso_level= 1; if(iso_level >= 1 && iso_level <= 3) { sprintf(sfe, "iso_9660_level=%d", iso_level); Xorriso_relax_compliance(xorriso, sfe, 0); @@ -2172,9 +2170,11 @@ problem_handler_2:; else argpt= argv[i]; if(strcmp(argpt, "-no-emul-boot")==0) { - emul_boot= xorriso->boot_image_emul= 0; + xorriso->boot_image_emul= 0; + xorriso->boot_emul_default= 0; } else if(strcmp(argpt, "-hard-disk-boot")==0) { - emul_boot= xorriso->boot_image_emul= 1; + xorriso->boot_image_emul= 1; + xorriso->boot_emul_default= 0; } else if(strcmp(argpt, "-boot-info-table")==0) { xorriso->patch_isolinux_image= (xorriso->patch_isolinux_image & ~2) | 1; } else if(strcmp(argpt, "-b") == 0 || @@ -2184,14 +2184,14 @@ problem_handler_2:; i++; if(strcmp(argpt, "--efi-boot") == 0) { if(xorriso->boot_image_bin_path[0]) { - ret= Xorriso_genisofs_add_boot(xorriso, whom, - &option_b, &emul_boot, 0); + ret= Xorriso_genisofs_add_boot(xorriso, 0); if(ret <= 0) goto problem_handler_boot; } boot_path= xorriso->boot_image_bin_path; xorriso->boot_efi_default= 1; - emul_boot= xorriso->boot_image_emul= 0; + xorriso->boot_image_emul= 0; + xorriso->boot_emul_default= 0; } else { boot_path= xorriso->boot_image_bin_path; @@ -2200,8 +2200,8 @@ problem_handler_2:; else xorriso->boot_platform_id= 0x00; xorriso->boot_efi_default= 0; - option_b= 1; - xorriso->boot_image_emul= emul_boot; + if(xorriso->boot_emul_default) + xorriso->boot_image_emul= 2; } boot_path[0]= 0; if(argv[i][0] != '/') @@ -2210,10 +2210,7 @@ problem_handler_2:; if(ret <= 0) goto ex; if(xorriso->boot_efi_default && xorriso->boot_image_bin_path[0]) { - option_b= 0; - emul_boot= 0; - ret= Xorriso_genisofs_add_boot(xorriso, whom, - &option_b, &emul_boot, 0); + ret= Xorriso_genisofs_add_boot(xorriso, 0); if(ret <= 0) goto problem_handler_boot; } @@ -2265,8 +2262,7 @@ problem_handler_2:; } else if(strcmp(argpt, "-isohybrid-apm-hfsplus") == 0) { xorriso->patch_isolinux_image = xorriso->patch_isolinux_image | (1 << 8); } else if(strcmp(argpt, "-eltorito-alt-boot")==0) { - ret= Xorriso_genisofs_add_boot(xorriso, whom, - &option_b, &emul_boot, 0); + ret= Xorriso_genisofs_add_boot(xorriso, 0); if(ret <= 0) goto problem_handler_boot; } else if(strcmp(argpt, "--embedded-boot")==0 || @@ -2358,11 +2354,6 @@ problem_handler_boot:; } if(with_boot_image && with_cat_path == 0) strcpy(xorriso->boot_image_cat_path, "/boot.catalog"); - if(xorriso->boot_image_bin_path[0]) { - ret= Xorriso_genisofs_add_boot(xorriso, whom, &option_b, &emul_boot, 0); - if(ret <= 0) - goto ex; - } /* The boot catalog has to be hidden separately */ if(xorriso->boot_image_cat_path[0]) { ret= Xorriso_path_is_hidden(xorriso, xorriso->boot_image_cat_path, 0); diff --git a/libisoburn/trunk/xorriso/opts_a_c.c b/libisoburn/trunk/xorriso/opts_a_c.c index 08dad9f3..5ae4b6ae 100644 --- a/libisoburn/trunk/xorriso/opts_a_c.c +++ b/libisoburn/trunk/xorriso/opts_a_c.c @@ -998,11 +998,14 @@ treatment_patch:; if(strcmp(treatpt + 10, "none") == 0 || strcmp(treatpt + 10, "no_emulation") == 0) { xorriso->boot_image_emul= 0; + xorriso->boot_emul_default= 0; } else if(strcmp(treatpt + 10, "hard_disk") == 0) { xorriso->boot_image_emul= 1; + xorriso->boot_emul_default= 0; } else if(strcmp(treatpt + 10, "floppy") == 0 || strcmp(treatpt + 10, "diskette") == 0) { xorriso->boot_image_emul= 2; + xorriso->boot_emul_default= 0; } else { sprintf(xorriso->info_text, "-boot_image %s : Unknown media_type : %s", diff --git a/libisoburn/trunk/xorriso/write_run.c b/libisoburn/trunk/xorriso/write_run.c index 297602d5..c6ccf2ad 100644 --- a/libisoburn/trunk/xorriso/write_run.c +++ b/libisoburn/trunk/xorriso/write_run.c @@ -2,7 +2,7 @@ /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. - Copyright 2007-2012 Thomas Schmitt, + Copyright 2007-2013 Thomas Schmitt, Provided under GPL version 2 or later. @@ -588,6 +588,7 @@ int Xorriso_attach_boot_image(struct XorrisO *xorriso, int flag) xorriso->boot_image_bin_path[0]= 0; xorriso->boot_image_bin_form[0]= 0; xorriso->boot_image_emul= 0; + xorriso->boot_emul_default= 1; xorriso->boot_image_load_size= 4 * 512; memset(xorriso->boot_id_string, 0, sizeof(xorriso->boot_id_string)); memset(xorriso->boot_selection_crit, 0, @@ -2077,8 +2078,10 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode, } else if((l == 16 && strncmp(cpt, "allow_dir_id_ext", l) == 0) || (l == 19 && strncmp(cpt, "allow_dir_id_ext_on", l) == 0) ) { xorriso->relax_compliance|= isoburn_igopt_allow_dir_id_ext; + xorriso->allow_dir_id_ext_dflt= 0; } else if((l == 20 && strncmp(cpt, "allow_dir_id_ext_off", l) == 0)) { xorriso->relax_compliance&= ~isoburn_igopt_allow_dir_id_ext; + xorriso->allow_dir_id_ext_dflt= 0; } else if((l == 12 && strncmp(cpt, "omit_version", l) == 0) || (l == 15 && strncmp(cpt, "omit_version_on", l) == 0) ) { @@ -2207,10 +2210,12 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode, if(value == 1 || value == 2) { limit= ((off_t) 4) * ((off_t) 1024*1024*1024) - ((off_t) 1); xorriso->iso_level= value; + xorriso->iso_level_is_default= 0; if(xorriso->file_size_limit > limit) xorriso->file_size_limit= limit; } else if(value == 3) { xorriso->iso_level= value; + xorriso->iso_level_is_default= 0; if(xorriso->file_size_limit < Xorriso_default_file_size_limiT) xorriso->file_size_limit= Xorriso_default_file_size_limiT; } else { diff --git a/libisoburn/trunk/xorriso/xorriso.1 b/libisoburn/trunk/xorriso/xorriso.1 index 5244170e..ae0b38ec 100644 --- a/libisoburn/trunk/xorriso/xorriso.1 +++ b/libisoburn/trunk/xorriso/xorriso.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISO 1 "Version 1.2.7, Jan 15, 2013" +.TH XORRISO 1 "Version 1.2.7, Mar 05, 2013" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -2269,6 +2269,10 @@ At the end of the list, "Write speed L" and "Write speed H" are the best guesses for lower and upper speed limit. "Write speed l" and "Write speed h" may appear only with CD and eventually override the list of other speed offers. +.br +Only if the drive reports contradicting speed information there will appear +"Write speed 0", which tells the outcome of speed selection by command +\-speed 0, if it deviates from "Write speed H". .TP \fB\-close_damaged\fR "as_needed"|"force" Try to close the upcomming track and session if the drive reported the medium @@ -4078,6 +4082,12 @@ the end of a "mkisofs" option list. Verbosity settings \-v (= "UPDATE") and \-quiet (= "SORRY") persist. The output file persists until things happen like \-commit, \-rollback, \-dev, or end of \fBxorriso\fR. +.br +Options which affect all file objects in the ISO image, like \-r or \-dir\-mode, +will be applied only to files which are present in the ISO image when +the command \-as ends. If you use several \-as mkisofs commands in the same +run, then consider to put such options into the last \-as command. +.br \-pacifier gets set to "mkisofs" if files are added to the image. .br \-graft\-points is equivalent to \-pathspecs on. Note that pathspecs without "=" diff --git a/libisoburn/trunk/xorriso/xorriso.info b/libisoburn/trunk/xorriso/xorriso.info index d282a21a..9a74857d 100644 --- a/libisoburn/trunk/xorriso/xorriso.info +++ b/libisoburn/trunk/xorriso/xorriso.info @@ -2013,6 +2013,9 @@ File: xorriso.info, Node: Writing, Next: SetWrite, Prev: Filter, Up: Command the best guesses for lower and upper speed limit. "Write speed l" and "Write speed h" may appear only with CD and eventually override the list of other speed offers. + Only if the drive reports contradicting speed information there + will appear "Write speed 0", which tells the outcome of speed + selection by command -speed 0, if it deviates from "Write speed H". -close_damaged "as_needed"|"force" Try to close the upcomming track and session if the drive reported @@ -3601,8 +3604,13 @@ said programs trigger comparable actions. -commit at the end of a "mkisofs" option list. Verbosity settings -v (= "UPDATE") and -quiet (= "SORRY") persist. The output file persists until things happen like -commit, -rollback, -dev, or end - of `xorriso'. -pacifier gets set to "mkisofs" if files are added - to the image. + of `xorriso'. + Options which affect all file objects in the ISO image, like -r or + -dir-mode, will be applied only to files which are present in the + ISO image when the command -as ends. If you use several -as + mkisofs commands in the same run, then consider to put such + options into the last -as command. + -pacifier gets set to "mkisofs" if files are added to the image. -graft-points is equivalent to -pathspecs on. Note that pathspecs without "=" are interpreted differently than with `xorriso' command -add. Directories get merged with the root directory of @@ -4707,7 +4715,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -chown_r sets ownership in ISO image: Manip. (line 47) * -clone copies ISO directory tree: Insert. (line 179) * -close controls media closing: SetWrite. (line 335) -* -close_damaged closes damaged track and session: Writing. (line 155) +* -close_damaged closes damaged track and session: Writing. (line 158) * -close_filter_list bans filter registration: Filter. (line 52) * -commit writes pending ISO image: Writing. (line 29) * -commit_eject writes and ejects: Writing. (line 56) @@ -4779,7 +4787,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -list_extras lists compile time extra features: Scripting. (line 26) * -list_formats lists available formats: Writing. (line 129) -* -list_profiles lists supported media: Writing. (line 169) +* -list_profiles lists supported media: Writing. (line 172) * -list_speeds lists available write speeds: Writing. (line 141) * -lns creates ISO symbolic link: Insert. (line 174) * -load addresses a particular session as input: Loading. (line 11) @@ -4814,7 +4822,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -out_charset sets output character set: SetWrite. (line 258) * -outdev acquires a drive for output: AqDrive. (line 31) * -overwrite enables overwriting in ISO: SetInsert. (line 127) -* -pacifier controls pacifier text form: Emulation. (line 158) +* -pacifier controls pacifier text form: Emulation. (line 163) * -padding sets amount or mode of image padding: SetWrite. (line 349) * -page set terminal geometry: DialogCtl. (line 19) * -paste_in copies file into disk file: Restore. (line 124) @@ -4836,7 +4844,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -quoted_not_list sets exclusions: SetInsert. (line 72) * -quoted_path_list inserts paths from disk file: Insert. (line 83) * -read_mkisofsrc searches and reads .mkisofsrc file: Emulation. - (line 146) + (line 151) * -reassure enables confirmation question: DialogCtl. (line 32) * -report_about controls verbosity: Exception. (line 55) * -return_with controls exit value: Exception. (line 39) @@ -4850,7 +4858,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -rom_toc_scan searches for sessions: Loading. (line 211) * -rr_reloc_dir sets name of relocation directory: SetWrite. (line 141) -* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 168) +* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 173) * -scsi_log reports SCSI commands: Scripting. (line 147) * -session_log logs written sessions: Scripting. (line 138) * -session_string composes session info line: Inquiry. (line 78) @@ -4917,12 +4925,12 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Backslash Interpretation, _definition: Processing. (line 52) * Backup, enable fast incremental, -disk_dev_ino: Loading. (line 190) * Backup, enable features, -for_backup: Loading. (line 185) -* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 168) +* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 173) * Blank media, _definition: Media. (line 29) * Blind growing, _definition: Methods. (line 40) * Bootability, control, -boot_image: Bootable. (line 26) * Bugs, reporting: Bugreport. (line 6) -* cdrecord, Emulation: Emulation. (line 111) +* cdrecord, Emulation: Emulation. (line 116) * Character Set, _definition: Charset. (line 6) * Character Set, for input, -in_charset: Loading. (line 92) * Character Set, for input/output, -charset: Charset. (line 43) @@ -4936,7 +4944,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Create, new ISO image, _definition: Methods. (line 6) * Cylinder alignment, _definition: Bootable. (line 188) * Cylinder size, _definition: Bootable. (line 177) -* Damaged track and session, close, -close_damaged: Writing. (line 155) +* Damaged track and session, close, -close_damaged: Writing. (line 158) * Delete, from ISO image, -rm: Manip. (line 21) * Delete, from ISO image, -rm_r: Manip. (line 28) * Delete, ISO directory, -rmdir: Manip. (line 32) @@ -4960,7 +4968,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Drive, for output, -outdev: AqDrive. (line 31) * Drive, get drive list, -device_links: Inquiry. (line 18) * Drive, get drive list, -devices: Inquiry. (line 7) -* Drive, list supported media, -list_profiles: Writing. (line 169) +* Drive, list supported media, -list_profiles: Writing. (line 172) * Drive, reduce activity, -calm_drive: Loading. (line 240) * Drive, report SCSI commands, -scsi_log: Scripting. (line 147) * Drive, write and eject, -commit_eject: Writing. (line 56) @@ -4969,10 +4977,10 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * EFI system partition, _definition: Bootable. (line 157) * El Torito, _definition: Extras. (line 19) * Emulation, -as: Emulation. (line 13) -* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 146) -* Emulation, cdrecord, -as: Emulation. (line 111) +* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 151) +* Emulation, cdrecord, -as: Emulation. (line 116) * Emulation, mkisofs, -as: Emulation. (line 16) -* Emulation, pacifier form, -pacifier: Emulation. (line 158) +* Emulation, pacifier form, -pacifier: Emulation. (line 163) * Examples: Examples. (line 6) * extattr, _definition: Extras. (line 65) * Filter, _definition: Filter. (line 6) @@ -5200,41 +5208,41 @@ Node: Manip64864 Node: CmdFind73688 Node: Filter88393 Node: Writing92949 -Node: SetWrite102128 -Node: Bootable120871 -Node: Jigdo136265 -Node: Charset140512 -Node: Exception143274 -Node: DialogCtl149394 -Node: Inquiry151992 -Node: Navigate157828 -Node: Verify166126 -Node: Restore175158 -Node: Emulation182245 -Node: Scripting192057 -Node: Frontend199218 -Node: Examples207293 -Node: ExDevices208471 -Node: ExCreate209130 -Node: ExDialog210415 -Node: ExGrowing211680 -Node: ExModifying212485 -Node: ExBootable212989 -Node: ExCharset213541 -Node: ExPseudo214362 -Node: ExCdrecord215260 -Node: ExMkisofs215577 -Node: ExGrowisofs216917 -Node: ExException218052 -Node: ExTime218506 -Node: ExIncBackup218965 -Node: ExRestore222957 -Node: ExRecovery223917 -Node: Files224487 -Node: Seealso225786 -Node: Bugreport226509 -Node: Legal227090 -Node: CommandIdx228101 -Node: ConceptIdx244330 +Node: SetWrite102337 +Node: Bootable121080 +Node: Jigdo136474 +Node: Charset140721 +Node: Exception143483 +Node: DialogCtl149603 +Node: Inquiry152201 +Node: Navigate158037 +Node: Verify166335 +Node: Restore175367 +Node: Emulation182454 +Node: Scripting192578 +Node: Frontend199739 +Node: Examples207814 +Node: ExDevices208992 +Node: ExCreate209651 +Node: ExDialog210936 +Node: ExGrowing212201 +Node: ExModifying213006 +Node: ExBootable213510 +Node: ExCharset214062 +Node: ExPseudo214883 +Node: ExCdrecord215781 +Node: ExMkisofs216098 +Node: ExGrowisofs217438 +Node: ExException218573 +Node: ExTime219027 +Node: ExIncBackup219486 +Node: ExRestore223478 +Node: ExRecovery224438 +Node: Files225008 +Node: Seealso226307 +Node: Bugreport227030 +Node: Legal227611 +Node: CommandIdx228622 +Node: ConceptIdx244851  End Tag Table diff --git a/libisoburn/trunk/xorriso/xorriso.texi b/libisoburn/trunk/xorriso/xorriso.texi index f159dcab..4eb5a0cb 100644 --- a/libisoburn/trunk/xorriso/xorriso.texi +++ b/libisoburn/trunk/xorriso/xorriso.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection @c man .\" other parameters are allowed: see man(7), man(1) -@c man .TH XORRISO 1 "Version 1.2.7, Jan 15, 2013" +@c man .TH XORRISO 1 "Version 1.2.7, Mar 05, 2013" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -2703,6 +2703,10 @@ At the end of the list, "Write speed L" and "Write speed H" are the best guesses for lower and upper speed limit. "Write speed l" and "Write speed h" may appear only with CD and eventually override the list of other speed offers. +@* +Only if the drive reports contradicting speed information there will appear +"Write speed 0", which tells the outcome of speed selection by command +-speed 0, if it deviates from "Write speed H". @c man .TP @item -close_damaged "as_needed"|"force" @kindex -close_damaged closes damaged track and session @@ -4791,6 +4795,12 @@ the end of a "mkisofs" option list. Verbosity settings -v (= "UPDATE") and -quiet (= "SORRY") persist. The output file persists until things happen like -commit, -rollback, -dev, or end of @command{xorriso}. +@* +Options which affect all file objects in the ISO image, like -r or -dir-mode, +will be applied only to files which are present in the ISO image when +the command -as ends. If you use several -as mkisofs commands in the same +run, then consider to put such options into the last -as command. +@* -pacifier gets set to "mkisofs" if files are added to the image. @* -graft-points is equivalent to -pathspecs on. Note that pathspecs without "=" diff --git a/libisoburn/trunk/xorriso/xorriso_private.h b/libisoburn/trunk/xorriso/xorriso_private.h index bfa33b12..6dde27c9 100644 --- a/libisoburn/trunk/xorriso/xorriso_private.h +++ b/libisoburn/trunk/xorriso/xorriso_private.h @@ -138,6 +138,7 @@ struct XorrisO { /* the global context of xorriso */ */ int iso_level; + int iso_level_is_default; int do_joliet; int do_hfsplus; int do_fat; @@ -179,6 +180,7 @@ struct XorrisO { /* the global context of xorriso */ char scdbackup_tag_listname[SfileadrL]; int relax_compliance; /* opaque bitfield to be set by xorrisoburn */ + int allow_dir_id_ext_dflt; /* -compliance allow_dir_id_ext still on default */ char rr_reloc_dir[256]; int rr_reloc_flags; int untranslated_name_len; @@ -367,6 +369,7 @@ struct XorrisO { /* the global context of xorriso */ 1=emulation as hard disk 2=emulation as floppy */ + int boot_emul_default; /* 1= boot_image_emul is still default */ off_t boot_image_load_size; unsigned char boot_id_string[29]; unsigned char boot_selection_crit[21]; diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index e7b456e6..5e0919bb 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2013.03.06.164906" +#define Xorriso_timestamP "2013.03.10.193344"