execp.cpp Aggiunto un salutare wakeup in caso di perdita del task
expr.cpp Corretta gestione del >= e del <= maskfld.cpp COrretta gestione errori in caso di fallimento di un check git-svn-id: svn://10.65.10.50/trunk@4011 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
fd53008af7
commit
671f4eb7e0
@ -61,11 +61,7 @@ word TExternal_app::run(
|
||||
TString256 path(_path);
|
||||
|
||||
if (utente)
|
||||
#if XVT_OS == XVT_OS_WIN
|
||||
path << " /u" << user();
|
||||
#else
|
||||
path << " -u" << user();
|
||||
#endif
|
||||
|
||||
_error = 0;
|
||||
_exitcode = 0;
|
||||
@ -114,9 +110,13 @@ word TExternal_app::run(
|
||||
|
||||
main_app().wait_for((word)child);
|
||||
for (byte i = 0; main_app().waiting() == (word)child; i++)
|
||||
{
|
||||
{
|
||||
// Esegue il controllo solo ogni 256 cicli
|
||||
if (i == 0 && ok && TaskFindHandle(&te, child) == FALSE)
|
||||
{
|
||||
main_app().wake_up(); // Annulla attesa del processo
|
||||
break;
|
||||
}
|
||||
xvt_app_process_pending_events();
|
||||
}
|
||||
|
||||
|
@ -476,22 +476,22 @@ void TExpression::eval()
|
||||
case _lteq:
|
||||
if (type == _strexpr)
|
||||
{
|
||||
const TString & s2 = evalstack.pop_string();
|
||||
const TString & s1 = evalstack.pop_string();
|
||||
const TString& s2 = evalstack.pop_string();
|
||||
const TString& s1 = evalstack.pop_string();
|
||||
evalstack.push(real(s1 <= s2 ? 1.0 : 0.0));
|
||||
}
|
||||
else
|
||||
{
|
||||
const real & r2 = evalstack.pop_real();
|
||||
real & r1 = evalstack.peek_real();
|
||||
const real& r2 = evalstack.pop_real();
|
||||
real& r1 = evalstack.peek_real();
|
||||
r1 = (r1 <= r2) ? 1.0 : 0.0;
|
||||
}
|
||||
break;
|
||||
case _gteq:
|
||||
if (type == _strexpr)
|
||||
{
|
||||
const TString & s2 = evalstack.pop_string();
|
||||
TString & s1 = evalstack.peek_string();
|
||||
const TString& s2 = evalstack.pop_string();
|
||||
const TString& s1 = evalstack.pop_string();
|
||||
evalstack.push(real(s1 >= s2 ? 1.0 : 0.0));
|
||||
}
|
||||
else
|
||||
|
@ -2830,9 +2830,10 @@ bool TEdit_field::on_key(KEY key)
|
||||
|
||||
TMask& m = mask();
|
||||
const bool query = m.query_mode();
|
||||
const bool vuoto = empty();
|
||||
|
||||
if (_browse)
|
||||
{
|
||||
{
|
||||
if (sheet())
|
||||
{
|
||||
ok = query || sheet()->check(); // Check consistency
|
||||
@ -2853,12 +2854,11 @@ bool TEdit_field::on_key(KEY key)
|
||||
ok = on_hit();
|
||||
else
|
||||
{
|
||||
if (empty())
|
||||
if (vuoto)
|
||||
ok = TRUE;
|
||||
else
|
||||
default_error_box();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (ok)
|
||||
{
|
||||
@ -2867,7 +2867,7 @@ bool TEdit_field::on_key(KEY key)
|
||||
test_key_complete();
|
||||
}
|
||||
else
|
||||
set_focusdirty(!empty());
|
||||
set_focusdirty(!vuoto);
|
||||
|
||||
return ok;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user