Made -abort_on and -report_about preemptive if given as dashed start arguments

This commit is contained in:
Thomas Schmitt 2008-02-03 18:13:59 +00:00
parent aaf81de247
commit fd9eb28523
4 changed files with 31 additions and 9 deletions

View File

@ -2,7 +2,7 @@
.\" First parameter, NAME, should be all caps .\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1) .\" 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. .\" Please adjust this date whenever revising the manpage.
.\" .\"
.\" Some roff macros, for reference: .\" 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 burn programs but you may well try some of those listed below
under SEE ALSO. under SEE ALSO.
.TP .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" \fB\-eject\fR "in"|"out"|"all"
Eject the media in -indev, resp. -outdev, resp. both drives. Eject the media in -indev, resp. -outdev, resp. both drives.
Note: It is not possible yet to effectively eject disk files. Note: It is not possible yet to effectively eject disk files.
.TP .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 \fB\-blank\fR mode
Blank media resp. invalidate ISO image on media if not -dummy Blank media resp. invalidate ISO image on media if not -dummy
is activated. is activated.
@ -950,6 +950,11 @@ ends of this potentially expandable range.
It may become necessary to abort the program anyway, despite It may become necessary to abort the program anyway, despite
the setting by this option. Expect not many "ABORT" events to the setting by this option. Expect not many "ABORT" events to
be ignorable. 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 .TP
\fB\-report_about\fR severity \fB\-report_about\fR severity
Set the threshold for events to be reported. 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 Event messages are sent to the info channel "I" which is usually stderr
but may be influenced by command -pkt_output. but may be influenced by command -pkt_output.
Info messages which belong to no event get attributed severity "NOTE". 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 .TP
.B Dialog mode control: .B Dialog mode control:
.TP .TP

View File

@ -8897,7 +8897,7 @@ int Xorriso_prescan_args(struct XorrisO *xorriso, int argc, char **argv,
1 ok, go on 1 ok, go on
*/ */
{ {
int i, ret, was_dashed; int i, ret, was_dashed, was_report_about= 0, was_abort_on;
char *cmd, *arg1; char *cmd, *arg1;
for(i=1+(flag&1);i<argc;i++) { for(i=1+(flag&1);i<argc;i++) {
@ -8949,6 +8949,19 @@ int Xorriso_prescan_args(struct XorrisO *xorriso, int argc, char **argv,
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
sprintf(xorriso->info_text, "Disabling use of libreadline."); sprintf(xorriso->info_text, "Disabling use of libreadline.");
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); 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); return(1);

View File

@ -1 +1 @@
#define Xorriso_timestamP "2008.02.03.164916" #define Xorriso_timestamP "2008.02.03.181259"

View File

@ -185,7 +185,7 @@ LIBISOBURN_MISCONFIGURATION_ = 0;
Xorriso_process_msg_queues(xorriso,0); Xorriso_process_msg_queues(xorriso,0);
if(reason[0]) { if(reason[0]) {
sprintf(xorriso->info_text, "%s", reason); 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"); sprintf(xorriso->info_text, "Library startup done.\n");