Patch level :4.0 657

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :eliminato pernicioso ciclo infinito nel caricamento di un documento


git-svn-id: svn://10.65.10.50/trunk@15098 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2007-03-20 14:14:09 +00:00
parent a3f8d5d063
commit 2d91f52e51

View File

@ -163,26 +163,27 @@ const TString_array& TTipo_documento::keys_descrs()
{ {
if (_keys_descrs.empty()) if (_keys_descrs.empty())
{ {
TString16 var, tiporiga; TFilename pn;
TFilename pn; profile_name(pn); profile_name(pn);
TConfig prof(pn); TConfig prof(pn, "RIGHE");
TTipo_riga_documento tr; TTipo_riga_documento tr;
TToken_string k, d; TToken_string k, d;
int i;
for (i = 0; ; i++) for (int i = 0; ; i++)
{ {
const TString16 tiporiga(prof.get("Tipo", "RIGHE", i)); const TString& tiporiga(prof.get("Tipo", NULL, i));
if (tiporiga.full()) if (tiporiga.full())
{ {
tr.read(tiporiga); tr.read(tiporiga);
k.add(tr.codice()); k.add(tr.codice());
d.add(tr.descrizione()); d.add(tr.descrizione());
} }
else
break; //esce da un eventuale ciclo infinito
} }
if (i == 0) if (k.blank())
{ {
TTable tri("%TRI"); TTable tri("%TRI");
@ -192,10 +193,11 @@ const TString_array& TTipo_documento::keys_descrs()
d.add(tri.get("S0")); d.add(tri.get("S0"));
} }
} }
_keys_descrs.add(k);
_keys_descrs.add(d);
}
_keys_descrs.add(k);
_keys_descrs.add(d);
}
return _keys_descrs; return _keys_descrs;
} }