From 81c5ed928214002f6832ec8c8430a1c2d51b985c Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Mon, 13 May 2013 12:40:48 +0000 Subject: [PATCH] Bug fix: -as mkisofs -print-size failed with -isohybrid-mbr and a single boot image --- libisoburn/trunk/xorriso/write_run.c | 4 +- libisoburn/trunk/xorriso/xorriso.1 | 7 +- libisoburn/trunk/xorriso/xorriso.info | 70 +++++++++++--------- libisoburn/trunk/xorriso/xorriso.texi | 7 +- libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- libisoburn/trunk/xorriso/xorrisofs.1 | 6 +- libisoburn/trunk/xorriso/xorrisofs.info | 57 ++++++++-------- libisoburn/trunk/xorriso/xorrisofs.texi | 6 +- 8 files changed, 93 insertions(+), 66 deletions(-) diff --git a/libisoburn/trunk/xorriso/write_run.c b/libisoburn/trunk/xorriso/write_run.c index e3db9c60..3d4ff4f5 100644 --- a/libisoburn/trunk/xorriso/write_run.c +++ b/libisoburn/trunk/xorriso/write_run.c @@ -776,7 +776,7 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag) goto ex; /* Activate, adjust or discard boot image */ - if(image!=NULL && !(flag&1)) { + if(image!=NULL) { is_bootable= iso_image_get_boot_image(image, NULL, NULL, &bootcat_node); if(xorriso->boot_image_bin_path[0]) { ret= Xorriso_attach_boot_image(xorriso, xorriso->boot_count == 0); @@ -784,6 +784,8 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag) goto ex; freshly_bootable= 1; } + } + if(image!=NULL && !(flag&1)) { if(xorriso->boot_count > 0) { /* Eventually rename boot catalog node to changed boot_image_cat_path */ if(is_bootable > 0) { diff --git a/libisoburn/trunk/xorriso/xorriso.1 b/libisoburn/trunk/xorriso/xorriso.1 index 66abac06..eb1962fb 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.9, Apr 14, 2013" +.TH XORRISO 1 "Version 1.2.9, Mai 13, 2013" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -3535,6 +3535,11 @@ prepared and only in last moment is revoked by this command. The result depends on several settings and also on the kind of output device. If no \-jidgo options are set and not command \-as "mkisofs" was used, then \-padding (300 kB by default) is not counted as part of the image size. +.br +If an El Torito boot image file is already depicted, then command \-print_size +automatically executes \-boot_image "any" "next". +This means that the properties of that boot image cannot be edited by +subsequent commands. .TP \fB\-tell_media_space\fR Print available space on the output medium and the free space after diff --git a/libisoburn/trunk/xorriso/xorriso.info b/libisoburn/trunk/xorriso/xorriso.info index 3377c7e6..7c77f2ef 100644 --- a/libisoburn/trunk/xorriso/xorriso.info +++ b/libisoburn/trunk/xorriso/xorriso.info @@ -3095,6 +3095,10 @@ File: xorriso.info, Node: Inquiry, Next: Navigate, Prev: DialogCtl, Up: Comm -jidgo options are set and not command -as "mkisofs" was used, then -padding (300 kB by default) is not counted as part of the image size. + If an El Torito boot image file is already depicted, then command + -print_size automatically executes -boot_image "any" "next". This + means that the properties of that boot image cannot be edited by + subsequent commands. -tell_media_space Print available space on the output medium and the free space after @@ -4877,7 +4881,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -prog_help prints help text: Frontend. (line 154) * -prompt prompts for enter key: Scripting. (line 110) * -publisher sets publisher id: SetWrite. (line 186) -* -pvd_info shows image id strings: Inquiry. (line 111) +* -pvd_info shows image id strings: Inquiry. (line 115) * -pwd tells working directory in ISO: Navigate. (line 20) * -pwdx tells working directory on disk: Navigate. (line 23) * -quoted_not_list sets exclusions: SetInsert. (line 72) @@ -4921,7 +4925,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -stdio_sync controls stdio buffer: SetWrite. (line 318) * -stream_recording controls defect management: SetWrite. (line 299) * -system_id sets system id: SetWrite. (line 201) -* -tell_media_space reports free space: Inquiry. (line 100) +* -tell_media_space reports free space: Inquiry. (line 104) * -temp_mem_limit curbs memory consumption: Scripting. (line 92) * -toc shows list of sessions: Inquiry. (line 28) * -toc_of shows list of sessions: Inquiry. (line 43) @@ -5057,7 +5061,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Image, set volume id, -volid: SetWrite. (line 160) * Image, set volume set id, -volset_id: SetWrite. (line 181) * Image, set volume timestamp, -volume_date: SetWrite. (line 208) -* Image, show id strings, -pvd_info: Inquiry. (line 111) +* Image, show id strings, -pvd_info: Inquiry. (line 115) * Insert, enable overwriting, -overwrite: SetInsert. (line 127) * Insert, file exclusion absolute, -not_paths: SetInsert. (line 55) * Insert, file exclusion from file, -not_list: SetInsert. (line 67) @@ -5209,7 +5213,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Write, enable HFS+, -hfsplus: SetWrite. (line 14) * Write, enable Joliet, -joliet: SetWrite. (line 10) * Write, fifo size, -fs: SetWrite. (line 328) -* Write, free space, -tell_media_space: Inquiry. (line 100) +* Write, free space, -tell_media_space: Inquiry. (line 104) * Write, log problematic disk files, -errfile_log: Scripting. (line 118) * Write, log written sessions, -session_log: Scripting. (line 138) * Write, padding image, -padding: SetWrite. (line 349) @@ -5255,34 +5259,34 @@ Node: Charset142827 Node: Exception145589 Node: DialogCtl151709 Node: Inquiry154307 -Node: Navigate160385 -Node: Verify168683 -Node: Restore177715 -Node: Emulation184802 -Node: Scripting194926 -Node: Frontend202087 -Node: Examples210162 -Node: ExDevices211340 -Node: ExCreate211999 -Node: ExDialog213284 -Node: ExGrowing214549 -Node: ExModifying215354 -Node: ExBootable215858 -Node: ExCharset216410 -Node: ExPseudo217231 -Node: ExCdrecord218129 -Node: ExMkisofs218446 -Node: ExGrowisofs219786 -Node: ExException220921 -Node: ExTime221375 -Node: ExIncBackup221834 -Node: ExRestore225814 -Node: ExRecovery226747 -Node: Files227317 -Node: Seealso228616 -Node: Bugreport229339 -Node: Legal229920 -Node: CommandIdx230931 -Node: ConceptIdx247233 +Node: Navigate160624 +Node: Verify168922 +Node: Restore177954 +Node: Emulation185041 +Node: Scripting195165 +Node: Frontend202326 +Node: Examples210401 +Node: ExDevices211579 +Node: ExCreate212238 +Node: ExDialog213523 +Node: ExGrowing214788 +Node: ExModifying215593 +Node: ExBootable216097 +Node: ExCharset216649 +Node: ExPseudo217470 +Node: ExCdrecord218368 +Node: ExMkisofs218685 +Node: ExGrowisofs220025 +Node: ExException221160 +Node: ExTime221614 +Node: ExIncBackup222073 +Node: ExRestore226053 +Node: ExRecovery226986 +Node: Files227556 +Node: Seealso228855 +Node: Bugreport229578 +Node: Legal230159 +Node: CommandIdx231170 +Node: ConceptIdx247472  End Tag Table diff --git a/libisoburn/trunk/xorriso/xorriso.texi b/libisoburn/trunk/xorriso/xorriso.texi index 737c87e8..89c2bcfe 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.9, Apr 14, 2013" +@c man .TH XORRISO 1 "Version 1.2.9, Mai 13, 2013" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -4134,6 +4134,11 @@ prepared and only in last moment is revoked by this command. The result depends on several settings and also on the kind of output device. If no -jidgo options are set and not command -as "mkisofs" was used, then -padding (300 kB by default) is not counted as part of the image size. +@* +If an El Torito boot image file is already depicted, then command -print_size +automatically executes -boot_image "any" "next". +This means that the properties of that boot image cannot be edited by +subsequent commands. @c man .TP @item -tell_media_space @kindex -tell_media_space reports free space diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index e82aec56..dcab6f93 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2013.05.06.161651" +#define Xorriso_timestamP "2013.05.13.123951" diff --git a/libisoburn/trunk/xorriso/xorrisofs.1 b/libisoburn/trunk/xorriso/xorrisofs.1 index 7d0c0b98..62e40c53 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.1 +++ b/libisoburn/trunk/xorriso/xorrisofs.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 XORRISOFS 1 "Version 1.2.9, Apr 14, 2013" +.TH XORRISOFS 1 "Version 1.2.9, Mai 13, 2013" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -1286,6 +1286,10 @@ The result depends on several settings. If option \-\-emul\-toc is given, then padding (see \-pad) is not counted as part of the image size. In this case either use \-no\-pad or add 150 (= 300 KiB) to the resulting number. +.br +If mkisofs emulation ends after option \-print\-size, then the properties of +the most recently specified boot image file cannot be edited by subsequent +xorriso commands. .TP \fB--no_rc\fR Only if used as first argument this option diff --git a/libisoburn/trunk/xorriso/xorrisofs.info b/libisoburn/trunk/xorriso/xorrisofs.info index af586a7c..adcddb10 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.info +++ b/libisoburn/trunk/xorriso/xorrisofs.info @@ -1267,6 +1267,9 @@ File: xorrisofs.info, Node: Miscellaneous, Next: ExSimple, Prev: Jigdo, Up: If option -emul-toc is given, then padding (see -pad) is not counted as part of the image size. In this case either use -no-pad or add 150 (= 300 KiB) to the resulting number. + If mkisofs emulation ends after option -print-size, then the + properties of the most recently specified boot image file cannot + be edited by subsequent xorriso commands. --no_rc Only if used as first argument this option prevents reading and @@ -1747,7 +1750,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * --md5 Recording of MD5 checksums: SetExtras. (line 84) * --modification-date set ISO image timestamps: ImageId. (line 82) * --no-emul-toc no table-of-content emulation: SetProduct. (line 44) -* --no_rc do not execute startup files: Miscellaneous. (line 16) +* --no_rc do not execute startup files: Miscellaneous. (line 19) * --norock disable Rock Ridge production: SetExtras. (line 25) * --old-empty old block addresses for empty files: SetProduct. (line 81) @@ -1814,7 +1817,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -generic-boot Fill System Area e.g. by MBR: SystemArea. (line 32) * -graft-points enable target=source pathspecs: SetInsert. (line 31) * -hard-disk-boot El Torito boot image emulation: Bootable. (line 68) -* -help list supported options: Miscellaneous. (line 20) +* -help list supported options: Miscellaneous. (line 23) * -hfs-bless HFS+ blessing ppc_bootdir: SetExtras. (line 182) * -hfs-bless-by HFS+ blessing: SetExtras. (line 171) * -hfsplus enable production of HFS+ partition: SetExtras. (line 124) @@ -1860,7 +1863,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 114) * -joliet-long allow longer Joliet names: SetExtras. (line 117) * -l allow 31 characters in ISO file names: SetCompl. (line 63) -* -log-file redirect stderr messages: Miscellaneous. (line 28) +* -log-file redirect stderr messages: Miscellaneous. (line 31) * -m exclude disk files from inserting: SetInsert. (line 35) * -M set path for loading existing ISO image: Loading. (line 11) * -max-iso9660-filenames allow 37 characters in ISO file names: SetCompl. @@ -1897,7 +1900,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 22) * -print-size predict ISO image size: Miscellaneous. (line 8) * -publisher set Publisher Id: ImageId. (line 35) -* -quiet suppress most messages: Miscellaneous. (line 24) +* -quiet suppress most messages: Miscellaneous. (line 27) * -R Rock Ridge (is enabled by default): SetExtras. (line 8) * -r Rock Ridge with altered owner and permission: SetExtras. (line 16) @@ -1918,10 +1921,10 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -untranslated-filenames very relaxed filename rules: SetCompl. (line 36) * -untranslated_name_len untranslated file names: SetCompl. (line 39) -* -v enable verbous messages: Miscellaneous. (line 33) +* -v enable verbous messages: Miscellaneous. (line 36) * -V set Volume Id: ImageId. (line 13) -* -verbose enable verbous messages: Miscellaneous. (line 36) -* -version report program version: Miscellaneous. (line 39) +* -verbose enable verbous messages: Miscellaneous. (line 39) +* -version report program version: Miscellaneous. (line 42) * -volid set Volume Id: ImageId. (line 23) * -volset set Volume Set Id: ImageId. (line 26) * -x exclude disk files from inserting: SetInsert. (line 45) @@ -2078,11 +2081,11 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * MBR, append partition, -append_partition: SystemArea. (line 128) * MBR, sectors per head, -partition_sec_hd: SystemArea. (line 99) * MD5, record and load, --md5: SetExtras. (line 84) -* Message output, redirect stderr, -log-file: Miscellaneous. (line 28) -* Message output, suppress, -quiet: Miscellaneous. (line 24) +* Message output, redirect stderr, -log-file: Miscellaneous. (line 31) +* Message output, suppress, -quiet: Miscellaneous. (line 27) * Mountability, by non-trivial partition 1, -partition_offset: SystemArea. (line 87) -* Options, list, -help: Miscellaneous. (line 20) +* Options, list, -help: Miscellaneous. (line 23) * Output file, set address, -o, -output: SetProduct. (line 8) * Padding, 300 KiB, -pad: SetProduct. (line 69) * Padding, disable, --old-empty: SetProduct. (line 81) @@ -2095,7 +2098,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Permissions, for all directories, -dir-mode: SetProduct. (line 60) * Preparer Id, set, -p: ImageId. (line 54) * Problems, reporting: Bugreport. (line 6) -* Program version, report, -version: Miscellaneous. (line 39) +* Program version, report, -version: Miscellaneous. (line 42) * Publisher Id, set, -P, -publisher: ImageId. (line 30) * Rock Ridge, (enabled by default), -R, -rock: SetExtras. (line 8) * Rock Ridge, _definition: Standards. (line 14) @@ -2106,12 +2109,12 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Session, select path, -M, -prev-session, -dev: Loading. (line 11) * Session, set load and write address, -C, -cdrecord-params: Loading. (line 28) -* Startup files, suppress, --no_rc: Miscellaneous. (line 16) +* Startup files, suppress, --no_rc: Miscellaneous. (line 19) * System Area, _definition: SystemArea. (line 6) * System Id, set, -sysid: ImageId. (line 49) * Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 44) * Table-of-content, emulation, --emul-toc: SetProduct. (line 35) -* Verbosity, high, -v, -verbose: Miscellaneous. (line 33) +* Verbosity, high, -v, -verbose: Miscellaneous. (line 36) * Volume Id, set, -V, -volid: ImageId. (line 13) * Volume Set Id, set, -volset: ImageId. (line 26) * xattr, record and load, --xattr: SetExtras. (line 77) @@ -2141,19 +2144,19 @@ Node: SystemArea38667 Node: Charset48964 Node: Jigdo49990 Node: Miscellaneous54257 -Node: Examples55630 -Node: ExSimple56116 -Node: ExGraft56595 -Node: ExMkisofs57842 -Node: ExGrowisofs59095 -Node: ExIncBackup60267 -Node: ExIncBckAcc63375 -Node: ExBootable65051 -Node: Files67143 -Node: Seealso68217 -Node: Bugreport68873 -Node: Legal69454 -Node: CommandIdx70349 -Node: ConceptIdx84415 +Node: Examples55813 +Node: ExSimple56299 +Node: ExGraft56778 +Node: ExMkisofs58025 +Node: ExGrowisofs59278 +Node: ExIncBackup60450 +Node: ExIncBckAcc63558 +Node: ExBootable65234 +Node: Files67326 +Node: Seealso68400 +Node: Bugreport69056 +Node: Legal69637 +Node: CommandIdx70532 +Node: ConceptIdx84598  End Tag Table diff --git a/libisoburn/trunk/xorriso/xorrisofs.texi b/libisoburn/trunk/xorriso/xorrisofs.texi index 28b4edeb..62420845 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.texi +++ b/libisoburn/trunk/xorriso/xorrisofs.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 XORRISOFS 1 "Version 1.2.9, Apr 14, 2013" +@c man .TH XORRISOFS 1 "Version 1.2.9, Mai 13, 2013" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -1741,6 +1741,10 @@ The result depends on several settings. If option --emul-toc is given, then padding (see -pad) is not counted as part of the image size. In this case either use -no-pad or add 150 (= 300 KiB) to the resulting number. +@* +If mkisofs emulation ends after option -print-size, then the properties of +the most recently specified boot image file cannot be edited by subsequent +xorriso commands. @c man .TP @item @minus{}@minus{}no_rc @kindex @minus{}@minus{}no_rc do not execute startup files