From ffba90fcc7a4b469a1d586676e94e120ffd6fb20 Mon Sep 17 00:00:00 2001 From: luca Date: Tue, 16 Feb 2010 15:09:31 +0000 Subject: [PATCH] Patch level :10.0 Files correlati :niet patch Ricompilazione Demo : [ ] Commento : commentato il pezzo di fascicolatore che chiedeva di allineare i numeri di patch di altri moduli. Sbagliava la scelta dei sottomoduli e non aggiornava il .ini della patch del modulo dipendente. E poi non serviva ad una ceppa in quanto alla domanda si rispondeva sempre NO. git-svn-id: svn://10.65.10.50/trunk@20130 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ba/ba1600.cpp | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/ba/ba1600.cpp b/ba/ba1600.cpp index 9a7c7e527..61736a6e4 100755 --- a/ba/ba1600.cpp +++ b/ba/ba1600.cpp @@ -1202,23 +1202,23 @@ bool TCreadischi_mask::modules_notify(TSheet_field& f, int row, KEY k) bool TModule_mask::module_dependent(int rownum, TString_array &p_submodules, TString &sub_mod, TString &ver, int & patch) const { TSheet_field& modsheet = get_sheet()->mask().sfield(F_SHEET); - TToken_string& curr_row=modsheet.row(rownum); - TAuto_token_string ext_mod=curr_row.get(modsheet.cid2index(S_EXTERN)); + TToken_string& curr_row = modsheet.row(rownum); + TAuto_token_string ext_mod = curr_row.get(modsheet.cid2index(S_EXTERN)); const int smods = ext_mod.blank() ? 0 : ext_mod.items() ; - for (int c=0; c < smods; c++) + for (int c = 0; c < smods; c++) { // is an external SUB module ? sub_mod = ext_mod.get(c); - if (sub_mod[2]!='\0' ) + if (sub_mod[2] != '\0') { // check patched submodules const int pmods = p_submodules.items(); - for (int p=0; p < pmods; p++) + for (int p = 0; p < pmods; p++) { if (p_submodules.row(p) == sub_mod) { - ver=curr_row.get(modsheet.cid2index(S_VERSION)); - patch=atoi(curr_row.get(modsheet.cid2index(S_PATCHLEVEL))); + ver = curr_row.get(modsheet.cid2index(S_VERSION)); + patch = atoi(curr_row.get(modsheet.cid2index(S_PATCHLEVEL))); return true; } } // loop over patched modules @@ -1251,15 +1251,21 @@ bool TModule_mask::check_patchlevels( TMod_composition_msk &mm) } // cerca i moduli che includono i sottomoduli patchati - bool need_update(false); + //*** QUESTA PARTE E' STATA COMMENTATA IN QUANTO PIUTTOSTO INUTILE PER COME FUNZIONA *** 16-02-2010 + //Infatti dovrebbe leggere l'elenco dei files della patch appena creata di un modulo, e per ognuno di tali files.. + //..dovrebbe controllare se il suo sottomodulo compare nella lista dei sottomoduli di dipendenza di altri moduli;.. + //..solo in questo caso dovrebbe avvertire della necessità di aggiornare anche i moduli dipendenti; inoltre funziona.. + //..male anche l'aggiornatore, in quanto aggiorna lo sheet ma il numero di patch nel .ini della patch del modulo.. + //..dipendente risulta non aggiornata! + /*bool need_update(false); TString16 sub_mod, sub_ver; int sub_patch; TSheet_field& modsheet = get_sheet()->mask().sfield(F_SHEET); FOR_EACH_SHEET_ROW(modsheet, midx, mriga) { - TToken_string& curr_row=modsheet.row(midx); + TToken_string& curr_row = modsheet.row(midx); TString16 mod_code(curr_row.get(modsheet.cid2index(S_MODULE))); - if (module_dependent(midx,patched_submodules, sub_mod, sub_ver, sub_patch)) + if (module_dependent(midx, patched_submodules, sub_mod, sub_ver, sub_patch)) { if (version == sub_ver) { @@ -1273,27 +1279,28 @@ bool TModule_mask::check_patchlevels( TMod_composition_msk &mm) } else if (!sub_ver.blank()) warning_box(FR("Il modulo '%s', dipendente dal sottomodulo '%s' \nha codice di release %s"), - (const char *)mod_code, (const char *)sub_mod,(const char *)sub_ver); + (const char *)mod_code, (const char *)sub_mod,(const char *)sub_ver); } - else if (module_dependent(midx,submodules, sub_mod, sub_ver, sub_patch)) + else if (module_dependent(midx, submodules, sub_mod, sub_ver, sub_patch)) { if (version == sub_ver) { if ( patchlev > sub_patch - && noyes_box(FR("Il modulo '%s' dipende da sottomoduli del modulo '%s'.\n Aggiorno il suo numero di patch a %d ?"),(const char *)mod_code,(const char *)module,patchlev)) + && noyes_box(FR("Il modulo '%s' dipende da sottomoduli del modulo '%s'.\n Aggiorno il suo numero di patch a %d ?"), + (const char *)mod_code,(const char *)module,patchlev)) { - curr_row.add(patchlev , modsheet.cid2index(S_PATCHLEVEL)); - curr_row.add(get(S_DATE) , modsheet.cid2index(S_DATE)); + curr_row.add(patchlev, modsheet.cid2index(S_PATCHLEVEL)); + curr_row.add(get(S_DATE), modsheet.cid2index(S_DATE)); need_update=true; } } else if (!sub_ver.blank()) warning_box(FR("Il modulo '%s', dipendente da sottomoduli del modulo '%s'\nha codice di release %s"), - (const char *)mod_code, (const char *)sub_mod,(const char *)sub_ver); + (const char *)mod_code, (const char *)sub_mod, (const char *)sub_ver); } } if (need_update) - modsheet.force_update(); + modsheet.force_update();*/ return true; }