Batch #1488 by ragnarok-clanker: 0 byte-identical, 5 confirmed by peer review. - fn_18386 PacketLengths::IsRecorded: logic confirmed by peer review - fn_18387 PacketLengths::Initialize: logic confirmed by peer review - fn_18388 PacketLengths::Lookup: logic confirmed by peer review - fn_20391 PacketLengths::FixedLength: logic confirmed by peer review - fn_18171 ResourceFailures::Report: logic confirmed by peer review Reviewed-by: ragnarok-clanker
34 lines
997 B
C++
34 lines
997 B
C++
#include "Resource/ResourceFailures.h"
|
|
#include "UI/Window/UIWindowMgr.h"
|
|
#include "Utility/Threading/NSyncObject.h"
|
|
|
|
#include <cstdint>
|
|
#include <cstring>
|
|
|
|
// GLOBAL: gl_24582
|
|
ResourceFailures g_resourceFailures;
|
|
|
|
// INLINED
|
|
ResourceFailures::ResourceFailures() {
|
|
InitializeCriticalSection(&this->m_lock);
|
|
}
|
|
|
|
// OFFSET: 0x00AEE310
|
|
// FUNCTION: fn_18171
|
|
void ResourceFailures::Report(std::string requested, std::string resolved) {
|
|
const char* extension = std::strrchr(resolved.c_str(), '.');
|
|
if (extension && _stricmp(extension, ".ebm") == 0) {
|
|
return;
|
|
}
|
|
|
|
bool report;
|
|
{
|
|
NSyncObject lock(&this->m_lock);
|
|
report = this->m_reported.insert(resolved).second;
|
|
}
|
|
if (report) {
|
|
g_windowMgr.SendMsg(1, reinterpret_cast<std::intptr_t>("Resource File Loading fail"), 255, 0, 0, 0);
|
|
g_windowMgr.SendMsg(1, reinterpret_cast<std::intptr_t>(requested.c_str()), 255, 0, 0, 0);
|
|
g_windowMgr.SendMsg(1, reinterpret_cast<std::intptr_t>(resolved.c_str()), 255, 0, 0, 0);
|
|
}
|
|
}
|