diff --git a/test/xorriso.c b/test/xorriso.c index a451368d..2a07c38a 100644 --- a/test/xorriso.c +++ b/test/xorriso.c @@ -1725,6 +1725,7 @@ static char Xorriso_sys_rc_nameS[Xorriso_rc_nuM][80]= { "placeholder for $HOME/.xorrisorc" }; + int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) { int i; @@ -1733,6 +1734,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag) *xorriso= m= TSOB_FELD(struct XorrisO,1); if(m==NULL) return(-1); + m->libs_are_started= 0; strncpy(m->progname,progname,sizeof(m->progname)-1); m->progname[sizeof(m->progname)-1]= 0; if(getcwd(m->initial_wdx,sizeof(m->initial_wdx)-1)==NULL) @@ -4980,7 +4982,7 @@ int Xorriso_main(int argc, char **argv) /* The prescan of arguments performs actions which have to happen before the normal processing of startup files and arguments. Currently: - -no_rc and single-argumenti runs like -help or -version. + -no_rc and single-argument runs like -help or -version. */ ret= Xorriso_prescan_args(xorriso,argc,argv,0); if(ret==0) diff --git a/test/xorriso_private.h b/test/xorriso_private.h index 8694c68b..541e56ae 100644 --- a/test/xorriso_private.h +++ b/test/xorriso_private.h @@ -47,6 +47,8 @@ typedef int (*Cleanup_app_handler_T)(); struct XorrisO { /* the global context of xorriso */ + int libs_are_started; + /* source */ char progname[SfileadrL]; char initial_wdx[SfileadrL]; diff --git a/test/xorriso_timestamp.h b/test/xorriso_timestamp.h index ac0fbb37..26676048 100644 --- a/test/xorriso_timestamp.h +++ b/test/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2007.10.18.183200" +#define Xorriso_timestamP "2007.10.18.185731" diff --git a/test/xorrisoburn.c b/test/xorrisoburn.c index df6c46c6..a11da370 100644 --- a/test/xorrisoburn.c +++ b/test/xorrisoburn.c @@ -63,12 +63,12 @@ int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag) } ret= isoburn_initialize(); if(ret==0) { - Xorriso_process_msg_queues(xorriso,0); sprintf(xorriso->info_text, "Cannot initialize libraries"); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FATAL", 0); free(handler_prefix); return(0); } + xorriso->libs_are_started= 1; queue_sev= "DEBUG"; if(xorriso->library_msg_direct_print) { @@ -505,6 +505,8 @@ int Xorriso_process_msg_queues(struct XorrisO *xorriso, int flag) int ret, error_code= 0, os_errno= 0, count= 0, pass; char severity[80]; + if(!xorriso->libs_are_started) + return(1); for(pass= 0; pass< 2; pass++) { while(1) { if(pass==0)