diff --git a/ba/ba0100.cpp b/ba/ba0100.cpp index 120e3625f..851561cd9 100755 --- a/ba/ba0100.cpp +++ b/ba/ba0100.cpp @@ -1478,9 +1478,22 @@ bool TMenu_application::test_programs() bool TMenu_application::dongle_update_needed() const { bool ok = TApplication::test_assistance_year(); + + if (ok) { - Tdninst dninst; + if (ini_get_int(CONFIG_INSTALL, "Main", "Type") == 3) // postazione client + { + // Controlla se deve aggiornare il dninst.zip locale da quello del server + const TFilename local_name = "setup/dninst.zip"; + TFilename remote_name = ini_get_string(CONFIG_GENERAL, "Main", "DiskPath"); + remote_name.add(local_name); + const long remote_date = xvt_fsys_file_attr(remote_name, XVT_FILE_ATTR_MTIME); + const long local_date = xvt_fsys_file_attr(local_name, XVT_FILE_ATTR_MTIME); + if (remote_date > local_date) + ::fcopy(remote_name, local_name); + } + Tdninst dninst; // file aggiornatissimo ormai ... const int dninst_year = dninst.assist_year(); const int dongle_year = dongle().year_assist(); ok = dninst_year <= dongle_year;