AerofoilX logging fixes

This commit is contained in:
elasota
2021-04-27 10:38:09 -04:00
parent 80683464af
commit 472462c535
2 changed files with 18 additions and 3 deletions

View File

@@ -180,6 +180,9 @@ bool GpFileSystem_X::ResolvePath(PortabilityLayer::VirtualDirectory_t virtualDir
case PortabilityLayer::VirtualDirectories::kPrefs:
prefsAppend = "Prefs";
break;
case PortabilityLayer::VirtualDirectories::kLogs:
prefsAppend = "Logs";
break;
default:
return false;
};
@@ -220,7 +223,7 @@ void GpFileSystem_X::Init()
if (m_basePath.size() >= 4 && m_basePath.substr(m_basePath.size() - 4, 3) == "bin")
m_basePath = m_basePath.substr(0, m_basePath.size() - 4) + "lib" + baseDirSeparator + "aerofoil" + baseDirSeparator;
const char *extensions[] = { "HighScores", "Houses", "SavedGames", "Prefs", "FontCache" };
const char *extensions[] = { "HighScores", "Houses", "SavedGames", "Prefs", "Logs" };
for (size_t i = 0; i < sizeof(extensions) / sizeof(extensions[0]); i++)
{
std::string prefsPath = std::string(prefsDir) + extensions[i];

View File

@@ -29,14 +29,26 @@ IGpInputDriver *GpDriver_CreateInputDriver_SDL2_Gamepad(const GpInputDriverPrope
SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[])
{
GpLogDriver_X::Init();
bool enableLogging = false;
for (int i = 1; i < argc; i++)
{
if (!strcmp(argv[i], "-diagnostics"))
enableLogging = true;
}
if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_GAMECONTROLLER) < 0)
return -1;
GpFileSystem_X::GetInstance()->Init();
IGpLogDriver *logger = GpLogDriver_X::GetInstance();
IGpLogDriver *logger = nullptr;
if (enableLogging)
{
GpLogDriver_X::Init();
logger = GpLogDriver_X::GetInstance();
}
GpDriverCollection *drivers = GpAppInterface_Get()->PL_GetDriverCollection();
drivers->SetDriver<GpDriverIDs::kFileSystem>(GpFileSystem_X::GetInstance());