From fd9eb28523db06e2cdf85dd05d687c40ba19deeb Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sun, 3 Feb 2008 18:13:59 +0000 Subject: [PATCH] Made -abort_on and -report_about preemptive if given as dashed start arguments --- xorriso/xorriso.1 | 21 +++++++++++++++------ xorriso/xorriso.c | 15 ++++++++++++++- xorriso/xorriso_timestamp.h | 2 +- xorriso/xorrisoburn.c | 2 +- 4 files changed, 31 insertions(+), 9 deletions(-) diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index 0922c4b7..1da5912b 100644 --- a/xorriso/xorriso.1 +++ b/xorriso/xorriso.1 @@ -2,7 +2,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 "January 27, 2008" +.TH XORRISO 1 "February 3, 2008" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -745,15 +745,15 @@ for such failure is hardly ever in the code of the various burn programs but you may well try some of those listed below under SEE ALSO. .TP -\fB\-commit_eject\fR -Like -commit. But when writing has finished it does not make --outdev the new -dev, and it loads no ISO image. It rather ejects --outdev and gives up -indev. -.TP \fB\-eject\fR "in"|"out"|"all" Eject the media in -indev, resp. -outdev, resp. both drives. Note: It is not possible yet to effectively eject disk files. .TP +\fB\-commit_eject\fR "in"|"out"|"all"|"none" +Combined -commit and -eject. When writing has finished do not make +-outdev the new -dev, and load no ISO image. Rather eject +-indev and/or -outdev. Eventually give up any non-ejected drive. +.TP \fB\-blank\fR mode Blank media resp. invalidate ISO image on media if not -dummy is activated. @@ -950,6 +950,11 @@ ends of this potentially expandable range. It may become necessary to abort the program anyway, despite the setting by this option. Expect not many "ABORT" events to be ignorable. +.br +A special property of this option is that it works preemtive if given as +program start argument. I.e. the first -abort_on setting among the +start arguments is in effect already when the first operations of xorriso +begin. Only "-abort_on" with dash "-" is recognized that way. .TP \fB\-report_about\fR severity Set the threshold for events to be reported. @@ -960,6 +965,10 @@ reach the severity threshold of -abort_on . Event messages are sent to the info channel "I" which is usually stderr but may be influenced by command -pkt_output. Info messages which belong to no event get attributed severity "NOTE". +.br +A special property of this option is that the first -report_about setting +among the start arguments is in effect already when the first operations +of xorriso begin. Only "-report_about" with dash "-" is recognized that way. .TP .B Dialog mode control: .TP diff --git a/xorriso/xorriso.c b/xorriso/xorriso.c index 90509fe4..1fd9d242 100644 --- a/xorriso/xorriso.c +++ b/xorriso/xorriso.c @@ -8897,7 +8897,7 @@ int Xorriso_prescan_args(struct XorrisO *xorriso, int argc, char **argv, 1 ok, go on */ { - int i, ret, was_dashed; + int i, ret, was_dashed, was_report_about= 0, was_abort_on; char *cmd, *arg1; for(i=1+(flag&1);iinfo_text, 0, "NOTE", 0); sprintf(xorriso->info_text, "Disabling use of libreadline."); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); + + } else if(strcmp(cmd,"abort_on")==0 && was_dashed) { + i++; + if(!was_abort_on) + Xorriso_option_abort_on(xorriso, arg1, 0); + was_abort_on= 1; + + } else if(strcmp(cmd,"report_about")==0 && was_dashed) { + i++; + if(!was_report_about) + Xorriso_option_report_about(xorriso, arg1, 0); + was_report_about= 1; + } } return(1); diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index be08b1c7..498dc809 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.02.03.164916" +#define Xorriso_timestamP "2008.02.03.181259" diff --git a/xorriso/xorrisoburn.c b/xorriso/xorrisoburn.c index c9c8d57e..dca27c41 100644 --- a/xorriso/xorrisoburn.c +++ b/xorriso/xorrisoburn.c @@ -185,7 +185,7 @@ LIBISOBURN_MISCONFIGURATION_ = 0; Xorriso_process_msg_queues(xorriso,0); if(reason[0]) { sprintf(xorriso->info_text, "%s", reason); - Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0); } sprintf(xorriso->info_text, "Library startup done.\n");