MCPcopy Create free account
hub / github.com/ddnet/ddnet / FinishMapDownload

Method FinishMapDownload

src/engine/client/client.cpp:2385–2416  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2383}
2384
2385void CClient::FinishMapDownload()
2386{
2387 m_pConsole->Print(IConsole::OUTPUT_LEVEL_ADDINFO, "client/network", "download complete, loading map");
2388
2389 bool FileSuccess = true;
2390 FileSuccess &= Storage()->RemoveFile(m_aMapdownloadFilename, IStorage::TYPE_SAVE);
2391 FileSuccess &= Storage()->RenameFile(m_aMapdownloadFilenameTemp, m_aMapdownloadFilename, IStorage::TYPE_SAVE);
2392 if(!FileSuccess)
2393 {
2394 char aError[128 + IO_MAX_PATH_LENGTH];
2395 str_format(aError, sizeof(aError), Localize("Could not save downloaded map. Try manually deleting this file: %s"), m_aMapdownloadFilename);
2396 DisconnectWithReason(aError);
2397 return;
2398 }
2399
2400 const char *pError = LoadMap(m_aMapdownloadName, m_aMapdownloadFilename, m_MapdownloadSha256, m_MapdownloadCrc);
2401 if(!pError)
2402 {
2403 ResetMapDownload(true);
2404 m_pConsole->Print(IConsole::OUTPUT_LEVEL_ADDINFO, "client/network", "loading done");
2405 SendReady(CONN_MAIN);
2406 }
2407 else if(m_pMapdownloadTask) // fallback
2408 {
2409 ResetMapDownload(false);
2410 SendMapRequest();
2411 }
2412 else
2413 {
2414 DisconnectWithReason(pError);
2415 }
2416}
2417
2418void CClient::ResetDDNetInfoTask()
2419{

Callers

nothing calls this directly

Calls 6

StorageFunction · 0.85
str_formatFunction · 0.85
LocalizeFunction · 0.85
RemoveFileMethod · 0.80
RenameFileMethod · 0.80
PrintMethod · 0.45

Tested by

no test coverage detected