This commit is contained in:
2026-06-11 18:06:14 +05:30
parent 0bef16e82c
commit d41b9da4e2
@@ -38,6 +38,15 @@ bool DataStore::initialize()
{
return false;
}
if (!lockDataStore())
{
CloseHandle(m_globalMutex);
m_globalMutex = NULL;
return false;
}
bool success = true;
do
{
util::ensureDirectoryExists(config::file::DIRECTORY);
m_users.fileName = config::file::USER_FILE;
m_users.recordSize = sizeof(SerializedUser);
@@ -63,53 +72,72 @@ bool DataStore::initialize()
m_inventoryManagementObservers.recordSize = sizeof(SerializedObserver);
if (!SharedMemory::createOrOpenMapping(m_users))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_notifications))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_services))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_comboPackages))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_inventoryItems))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_serviceBookings))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_jobCards))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_invoices))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_payments))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_serviceManagementObservers))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_paymentManagementObservers))
{
return false;
success = false;
break;
}
if (!SharedMemory::createOrOpenMapping(m_inventoryManagementObservers))
{
return false;
success = false;
break;
}
return true;
} while (false);
unlockDataStore();
if (!success)
{
shutdown();
}
return success;
}
/*