From c1aaa16203812221358a7f116c7ce1808d2a1d99 Mon Sep 17 00:00:00 2001 From: angelo Date: Fri, 22 Sep 1995 08:07:41 +0000 Subject: [PATCH] Sistemata definitivamente l'analisi dei parametri passati sulla linea di comando. git-svn-id: svn://10.65.10.50/trunk@1876 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ab/ab0200.cpp | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/ab/ab0200.cpp b/ab/ab0200.cpp index 523f390c9..ee451a3cc 100755 --- a/ab/ab0200.cpp +++ b/ab/ab0200.cpp @@ -222,22 +222,26 @@ bool TPconAb::user_create() _msk->set_handler(F_INDBIL, IndBil); _msk->set_handler(F_LIVELLO, LivelloStrutt); - _isparametri = FALSE; + _isparametri = FALSE; - if (argv(2) != "" && argc() == 4) + if (argc() == 5 || argc() == 4) // solo si viene specificato codice e indbil, non importa se l'ultimo e' l'utente { + // Originariamente dava un GPF, se non si controllava quanti parametri ci sono sulla riga di comando, + // inoltre non ha senso una linea cosi' fatta: + // ab0 -1 /uPRASSI + // perche' cosi' prende come _codice l'utente. (Basta che sia diverso da /uPRASSI) + // Percio' l'analisi dei parametri viene cosi' cambiata: l'utente e' sempre l'ultimo parametro, + // quindi si avranno o 3 (2) o 5(4) parametri, di cui l'ultimo e' sempre l'utente (parametro 3 o 5) + // mentre i parametri 3 e 4 saranno il codice e indbil. E' percio' fondamentale controllare + // il numero dei parametri. _codice = argv(2); - if (_codice != "-uPRASSI" && _codice != "/uPRASSI") - { - _indbil = atoi(argv(3)); - - if (_indbil == 1) _newindbil = 2; - if (_indbil == 2) _newindbil = 1; - if (_indbil == 3) _newindbil = 4; - if (_indbil == 4) _newindbil = 3; - - _isparametri = TRUE; - } + _indbil = atoi(argv(3)); + if (_indbil == 1) _newindbil = 2; + if (_indbil == 2) _newindbil = 1; + if (_indbil == 3) _newindbil = 4; + if (_indbil == 4) _newindbil = 3; + + _isparametri = TRUE; } set_search_field(F_CODICE);