Cambiata la sequenza di chiamata per allow_another_instance()

e deny_another_instance(), per evitare fastidiosissimi reset della
macchina dopo un GPF dell'applicazione.[Modifica effettuata tramite
Alex].


git-svn-id: svn://10.65.10.50/trunk@3056 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1996-06-21 14:26:53 +00:00
parent 0efdee7b30
commit 5495ed9b34
2 changed files with 5 additions and 2 deletions

View File

@ -171,7 +171,6 @@ long XVT_CALLCONV1 TApplication::task_eh(WINDOW win, EVENT *ep)
message_box("Attach to process %d ...", getpid());
#endif
do_events();
allow_another_instance();
break;
#if XVT_OS == XVT_OS_WIN || XVT_OS == XVT_OS_NT

View File

@ -88,6 +88,7 @@ word TExternal_app::run(
}
main_app().begin_wait();
HL_LOGOUT();
allow_another_instance();
_exitcode = WinExec((char*)(const char*)path, SW_SHOW);
if (_exitcode >= 32)
@ -200,6 +201,7 @@ word TExternal_app::run(
// update counts
if (_exitcode == 0)
_count++;
#if XVT_OS == XVT_OS_WIN
// Ignora volutamente il return code da HL_LOGIN(). Se va bene riprende il posto
// altrimenti fa lo stesso. Infatti puo' capitare con una chiave di rete, che
// nel lasso di tempo trascorso dalla HL_LOGOUT() dell'applicazione chiamata,
@ -209,7 +211,9 @@ word TExternal_app::run(
// non ci saranno piu' posti liberi nell'HL_server: il programma comunque non
// puo' interrompersi a meta'; ecco perche il valore di ritorno di HL_LOGIN viene
// ignorato.
HL_LOGIN(ModAd, DONT_CARE, REFKEY, VERKEY);
HL_LOGIN(ModAd, DONT_CARE, REFKEY, VERKEY);
deny_another_instance();
#endif
return _exitcode;
}