Reorganize sources and files (#414)

* Reorganize sources

* Refactor

* Remove relative paths

* Renames

* Fix gitignore

* Remove stuff

* Try fixing format script

* Fix format

* Fix format

* Fix naming script

* Test format

* Fix format
This commit is contained in:
Christian Semmler
2024-01-08 04:58:49 -05:00
committed by GitHub
parent 6a85e62406
commit c47206617d
447 changed files with 347 additions and 346 deletions

View File

@@ -0,0 +1,76 @@
#include "mxcriticalsection.h"
#include "decomp.h"
#include <stdio.h>
DECOMP_SIZE_ASSERT(MxCriticalSection, 0x1c);
// GLOBAL: LEGO1 0x10101e78
int g_useMutex = 0;
// FUNCTION: LEGO1 0x100b6d20
MxCriticalSection::MxCriticalSection()
{
HANDLE mutex;
if (g_useMutex != 0) {
mutex = CreateMutexA(NULL, FALSE, NULL);
this->m_mutex = mutex;
return;
}
InitializeCriticalSection(&this->m_criticalSection);
this->m_mutex = NULL;
}
// FUNCTION: LEGO1 0x100b6d60
MxCriticalSection::~MxCriticalSection()
{
if (this->m_mutex != NULL) {
CloseHandle(this->m_mutex);
return;
}
DeleteCriticalSection(&this->m_criticalSection);
}
// FUNCTION: LEGO1 0x100b6d80
void MxCriticalSection::Enter()
{
DWORD result;
FILE* file;
if (this->m_mutex != NULL) {
result = WaitForSingleObject(this->m_mutex, 5000);
if (result == WAIT_FAILED) {
file = fopen("C:\\DEADLOCK.TXT", "a");
if (file != NULL) {
fprintf(file, "mutex timeout occurred!\n");
fclose(file);
}
abort();
}
}
else {
EnterCriticalSection(&this->m_criticalSection);
}
}
// FUNCTION: LEGO1 0x100b6de0
void MxCriticalSection::Leave()
{
if (this->m_mutex != NULL) {
ReleaseMutex(this->m_mutex);
return;
}
LeaveCriticalSection(&this->m_criticalSection);
}
// FUNCTION: LEGO1 0x100b6e00
void MxCriticalSection::SetDoMutex()
{
g_useMutex = 1;
}