From 23665a7b9366a567357ebaaec7ebf73a6735da8b Mon Sep 17 00:00:00 2001 From: "XTra.KrazzY" Date: Sun, 24 Aug 2008 16:25:52 +0000 Subject: [PATCH] Cross compatibility function union (strcasecmp, unlink) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@293 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/Common/Src/Common.h | 9 +++++++++ Source/Core/Core/Src/CoreParameter.cpp | 20 +------------------ .../Core/Src/Debugger/Debugger_SymbolMap.cpp | 4 ---- Source/Core/Core/Src/LogManager.cpp | 5 +---- Source/Core/DiscIO/Src/FileHandlerARC.cpp | 7 ++----- Source/Core/DiscIO/Src/FileSystemGCWii.cpp | 7 ++----- 6 files changed, 15 insertions(+), 37 deletions(-) diff --git a/Source/Core/Common/Src/Common.h b/Source/Core/Common/Src/Common.h index b07d734a7d..fb2ffc97ab 100644 --- a/Source/Core/Common/Src/Common.h +++ b/Source/Core/Common/Src/Common.h @@ -22,6 +22,15 @@ #include #include +// Function Cross-Compatibility +#ifdef _WIN32 +#define strcasecmp _stricmp +#define unlink _unlink +#else +#define _stricmp strcasecmp +#define _unlink unlink +#endif + #ifdef _WIN32 #define POSIX 0 #define NOMINMAX diff --git a/Source/Core/Core/Src/CoreParameter.cpp b/Source/Core/Core/Src/CoreParameter.cpp index 19acdc2671..a68ac61a5b 100644 --- a/Source/Core/Core/Src/CoreParameter.cpp +++ b/Source/Core/Core/Src/CoreParameter.cpp @@ -52,15 +52,9 @@ bool SCoreStartupParameter::AutoSetup(EBootBios _BootBios) { std::string Extension; SplitPath(m_strFilename, NULL, NULL, &Extension); - #ifdef _WIN32 - if (!_stricmp(Extension.c_str(), ".gcm") || - !_stricmp(Extension.c_str(), ".iso") || - !_stricmp(Extension.c_str(), ".gcz") ) - #else - if (!strcasecmp(Extension.c_str(), ".gcm") || //TODO(Sonic): Shouldn't these work on all platforms? + if (!strcasecmp(Extension.c_str(), ".gcm") || !strcasecmp(Extension.c_str(), ".iso") || !strcasecmp(Extension.c_str(), ".gcz") ) - #endif { m_BootType = BOOT_ISO; DiscIO::IVolume* pVolume = DiscIO::CreateVolumeFromFilename(m_strFilename.c_str()); @@ -97,32 +91,20 @@ bool SCoreStartupParameter::AutoSetup(EBootBios _BootBios) delete pVolume; } - #ifdef _WIN32 - else if (!_stricmp(Extension.c_str(), ".elf")) - #else else if (!strcasecmp(Extension.c_str(), ".elf")) - #endif { bWii = CBoot::IsElfWii(m_strFilename.c_str()); BaseDataPath = s_DataBasePath_USA; m_BootType = BOOT_ELF; bNTSC = true; } - #ifdef _WIN32 - else if (!_stricmp(Extension.c_str(), ".bin")) - #else else if (!strcasecmp(Extension.c_str(), ".bin")) - #endif { BaseDataPath = s_DataBasePath_USA; m_BootType = BOOT_BIN; bNTSC = true; } - #ifdef _WIN32 - else if (!_stricmp(Extension.c_str(), ".dol")) - #else else if (!strcasecmp(Extension.c_str(), ".dol")) - #endif { BaseDataPath = s_DataBasePath_USA; m_BootType = BOOT_DOL; diff --git a/Source/Core/Core/Src/Debugger/Debugger_SymbolMap.cpp b/Source/Core/Core/Src/Debugger/Debugger_SymbolMap.cpp index e1f5edd0ba..980bc4e54e 100644 --- a/Source/Core/Core/Src/Debugger/Debugger_SymbolMap.cpp +++ b/Source/Core/Core/Src/Debugger/Debugger_SymbolMap.cpp @@ -111,11 +111,7 @@ XSymbolIndex FindSymbol(const char *name) for (int i = 0; i < (int)g_Symbols.size(); i++) { const Symbol& rSymbol = g_Symbols[i]; - #ifdef _WIN32 - if (!_stricmp(rSymbol.GetName().c_str(), name)) - #else if (!strcasecmp(rSymbol.GetName().c_str(), name)) - #endif { return (XSymbolIndex)i; } diff --git a/Source/Core/Core/Src/LogManager.cpp b/Source/Core/Core/Src/LogManager.cpp index f52dcbebb6..3472f4f73a 100644 --- a/Source/Core/Core/Src/LogManager.cpp +++ b/Source/Core/Core/Src/LogManager.cpp @@ -51,11 +51,8 @@ CDebugger_Log::CDebugger_Log(const char* _szShortName, const char* _szName) : strcpy((char*)m_szName, _szName); strcpy((char*)m_szShortName, _szShortName); sprintf((char*)m_szFilename, "Logs/%s.txt", _szName); - #ifdef _WIN32 - _unlink(m_szFilename); - #else + unlink(m_szFilename); - #endif } CDebugger_Log::~CDebugger_Log(void) diff --git a/Source/Core/DiscIO/Src/FileHandlerARC.cpp b/Source/Core/DiscIO/Src/FileHandlerARC.cpp index e299a83334..4319cc001a 100644 --- a/Source/Core/DiscIO/Src/FileHandlerARC.cpp +++ b/Source/Core/DiscIO/Src/FileHandlerARC.cpp @@ -16,6 +16,7 @@ // http://code.google.com/p/dolphin-emu/ #include "stdafx.h" +#include "Common.h" #include "FileHandlerARC.h" #include "StringUtil.h" @@ -225,11 +226,7 @@ CARCFile::FindFileInfo(std::string _rFullPath) const { for (size_t i = 0; i < m_FileInfoVector.size(); i++) { - #ifdef _WIN32 - if (!_stricmp(m_FileInfoVector[i].m_FullPath.c_str(), _rFullPath.c_str())) - #else - if (!strcasecmp(m_FileInfoVector[i].m_FullPath.c_str(), _rFullPath.c_str())) //TODO(Sonic): Shouldn't this work in all platforms? - #endif + if (!strcasecmp(m_FileInfoVector[i].m_FullPath.c_str(), _rFullPath.c_str())) { return(&m_FileInfoVector[i]); } diff --git a/Source/Core/DiscIO/Src/FileSystemGCWii.cpp b/Source/Core/DiscIO/Src/FileSystemGCWii.cpp index e92d1109d5..439317d746 100644 --- a/Source/Core/DiscIO/Src/FileSystemGCWii.cpp +++ b/Source/Core/DiscIO/Src/FileSystemGCWii.cpp @@ -16,6 +16,7 @@ // http://code.google.com/p/dolphin-emu/ #include "stdafx.h" +#include "Common.h" #include @@ -164,11 +165,7 @@ CFileSystemGCWii::FindFileInfo(const char* _rFullPath) const { for (size_t i = 0; i < m_FileInfoVector.size(); i++) { - #ifdef _WIN32 - if (!_stricmp(m_FileInfoVector[i].m_FullPath, _rFullPath)) - #else - if (!strcasecmp(m_FileInfoVector[i].m_FullPath, _rFullPath)) //TODO(Sonic): Shouldn't this work in all platforms? - #endif + if (!strcasecmp(m_FileInfoVector[i].m_FullPath, _rFullPath)) { return(&m_FileInfoVector[i]); }