Patch level : 12.0 404

Files correlati     : ba1.exe

Se cambiavo i l numero di patch e non uscivo prima di generarla veniva scritto un numero di patch errato nel .ini



git-svn-id: svn://10.65.10.50/branches/R_10_00@23865 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
bonazzi 2017-06-01 17:05:47 +00:00
parent 38e4d83c0f
commit b66f707789

View File

@ -40,12 +40,16 @@ class TFascicolator_mask;
class TCreazione_dischi : public TSkeleton_application class TCreazione_dischi : public TSkeleton_application
{ {
TAssoc_array _last_patch;
protected: protected:
TFascicolator_mask* _mask; TFascicolator_mask* _mask;
virtual void main_loop(); virtual void main_loop();
public: public:
void set_last_patch(const TString& module, const TString& patch) { _last_patch.add(module, patch, true);}
const int last_patch(const TString& module) { return _last_patch.objptr(module) != NULL ? atoi((TString&) _last_patch[module]) : 0;}
TFascicolator_mask& mask() const { return *_mask; } TFascicolator_mask& mask() const { return *_mask; }
}; };
@ -95,12 +99,10 @@ int TInstall_ini::build_list(const TString& module, TString_array& a,
if (sommario && *sommario && is_patch) if (sommario && *sommario && is_patch)
{ {
TFilename real_patch(sommario); const int p = app().last_patch(module);
real_patch = real_patch.name_only(); if (p > 0 && atoi(str) != p)
real_patch = real_patch.smid(2, 4); tmp.format("%04d", p);
if (atoi(real_patch) > 0 && strncmp(str, (const char *)real_patch, 4) != 0)
tmp = real_patch;
else else
tmp = str; tmp = str;
} }
@ -1314,6 +1316,7 @@ bool TFascicolator_mask::patchl_handler(TMask_field& f, KEY k)
TInstall_ini ini; TInstall_ini ini;
ini.set_patch(module, f.get_long()); ini.set_patch(module, f.get_long());
app().set_last_patch(module, f.get());
} }
break; break;
default: default:
@ -1768,6 +1771,8 @@ void TFascicolator_mask::save()
TProgind pi(s.items(), TR("Salvataggio in corso..."), false, true); TProgind pi(s.items(), TR("Salvataggio in corso..."), false, true);
TInstall_ini ini; TInstall_ini ini;
TString8 modulo;
TString8 patch;
TString tmp; TString tmp;
FOR_EACH_SHEET_ROW_BACK(s, r, row) FOR_EACH_SHEET_ROW_BACK(s, r, row)
@ -1777,7 +1782,8 @@ void TFascicolator_mask::save()
tmp = row->get(1); tmp = row->get(1);
if (tmp.not_empty() && tmp != "xx") if (tmp.not_empty() && tmp != "xx")
{ {
ini.set_paragraph(tmp); modulo = tmp;
ini.set_paragraph(modulo);
tmp = row->get(0); tmp = row->get(0);
ini.set("Descrizione", tmp); ini.set("Descrizione", tmp);
@ -1785,8 +1791,8 @@ void TFascicolator_mask::save()
tmp = row->get(2); tmp = row->get(2);
ini.set("Versione", tmp); ini.set("Versione", tmp);
tmp = row->get(); patch = row->get();
ini.set("Patch", tmp); ini.set("Patch", patch);
tmp = row->get(); tmp = row->get();
ini.set("Data", tmp); ini.set("Data", tmp);
@ -1802,6 +1808,15 @@ void TFascicolator_mask::save()
tmp = row->get(); tmp = row->get();
ini.set("OEM", tmp); ini.set("OEM", tmp);
for (int i = 0; i <= 9; i++)
{
TString submodule(modulo);
submodule << i;
if (ini.set_paragraph(submodule))
ini.set("Patch", patch);
}
} }
} }
} }