bool SpringUnitSync::FastLoadUnitSyncLib( const wxString& unitsyncloc ) { LOCK_UNITSYNC; if (!_LoadUnitSyncLib( unitsyncloc )) return false; m_mods_list.clear(); m_mod_array.Clear(); m_unsorted_mod_array.Clear(); m_mods_unchained_hash.clear(); const int numMods = susynclib().GetPrimaryModCount(); wxString name; for ( int i = 0; i < numMods; i++ ) { try { name = susynclib().GetPrimaryModName( i ); m_mods_list[name] = _T("fakehash"); m_mod_array.Add( name ); m_shortname_to_name_map[ std::make_pair(susynclib().GetPrimaryModShortName( i ), susynclib().GetPrimaryModVersion( i )) ] = name; } catch (...) { continue; } } m_unsorted_mod_array = m_mod_array; return true; }
bool SpringUnitSync::LoadUnitSyncLib( const wxString& unitsyncloc ) { LOCK_UNITSYNC; UiEvents::ScopedStatusMessage staus(_("loading unitsync"), 0); wxLogDebugFunc( _T("") ); bool ret = _LoadUnitSyncLib( unitsyncloc ); if (ret) { m_cache_path = sett().GetCachePath(); PopulateArchiveList(); GetGlobalEventSender(GlobalEvents::OnUnitsyncReloaded).SendEvent( 0 ); } return ret; }
bool SpringUnitSync::LoadUnitSyncLib( const wxString& unitsyncloc ) { LOCK_UNITSYNC; m_cache_thread = new WorkerThread(); m_cache_thread->Create(); m_cache_thread->SetPriority( WXTHREAD_MIN_PRIORITY ); m_cache_thread->Run(); UiEvents::ScopedStatusMessage staus(_("loading unitsync"), 0); wxLogDebugFunc( _T("") ); bool ret = _LoadUnitSyncLib( unitsyncloc ); if (ret) { m_cache_path = sett().GetCachePath(); PopulateArchiveList(); GetGlobalEventSender(GlobalEvents::OnUnitsyncReloaded).SendEvent( 0 ); } return ret; }