mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-07 03:13:49 +00:00
Add Android compatible wrapper for wcscat and wchar_t* constant strings.
This commit is contained in:
parent
0a4bf95e2f
commit
2b0db06858
|
@ -388,6 +388,7 @@
|
||||||
<ClInclude Include="..\..\src\S2DEX2.h" />
|
<ClInclude Include="..\..\src\S2DEX2.h" />
|
||||||
<ClInclude Include="..\..\src\windows\GLFunctions.h" />
|
<ClInclude Include="..\..\src\windows\GLFunctions.h" />
|
||||||
<ClInclude Include="..\..\src\windows\GLideN64_windows.h" />
|
<ClInclude Include="..\..\src\windows\GLideN64_windows.h" />
|
||||||
|
<ClInclude Include="..\..\src\wst.h" />
|
||||||
<ClInclude Include="..\..\src\ZilmarGFX_1_3.h">
|
<ClInclude Include="..\..\src\ZilmarGFX_1_3.h">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_mupenplus|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_mupenplus|Win32'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_mupenplus|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_mupenplus|Win32'">true</ExcludedFromBuild>
|
||||||
|
|
|
@ -346,5 +346,8 @@
|
||||||
<ClInclude Include="..\..\src\GLSLCombiner.h">
|
<ClInclude Include="..\..\src\GLSLCombiner.h">
|
||||||
<Filter>Header Files</Filter>
|
<Filter>Header Files</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\wst.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
|
@ -6,6 +6,7 @@
|
||||||
#include "RSP.h"
|
#include "RSP.h"
|
||||||
#include "PluginAPI.h"
|
#include "PluginAPI.h"
|
||||||
#include "Config.h"
|
#include "Config.h"
|
||||||
|
#include "wst.h"
|
||||||
|
|
||||||
void Config::resetToDefaults()
|
void Config::resetToDefaults()
|
||||||
{
|
{
|
||||||
|
@ -53,7 +54,7 @@ void Config::resetToDefaults()
|
||||||
textureFilter.txSaveCache = 1;
|
textureFilter.txSaveCache = 1;
|
||||||
|
|
||||||
api().GetUserDataPath(textureFilter.txPath);
|
api().GetUserDataPath(textureFilter.txPath);
|
||||||
wcscat(textureFilter.txPath, L"/hires_texture");
|
gln_wcscat(textureFilter.txPath, wst("/hires_texture"));
|
||||||
|
|
||||||
#ifdef OS_WINDOWS
|
#ifdef OS_WINDOWS
|
||||||
font.name.assign("arial.ttf");
|
font.name.assign("arial.ttf");
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
#include "GLideNHQ/Ext_TxFilter.h"
|
#include "GLideNHQ/Ext_TxFilter.h"
|
||||||
#include "VI.h"
|
#include "VI.h"
|
||||||
#include "Config.h"
|
#include "Config.h"
|
||||||
|
#include "wst.h"
|
||||||
#include "Log.h"
|
#include "Log.h"
|
||||||
#include "TextDrawer.h"
|
#include "TextDrawer.h"
|
||||||
#include "PluginAPI.h"
|
#include "PluginAPI.h"
|
||||||
|
@ -1352,7 +1353,7 @@ void TextureFilterHandler::init()
|
||||||
wchar_t * pTexPackPath = config.textureFilter.txPath;
|
wchar_t * pTexPackPath = config.textureFilter.txPath;
|
||||||
if (::wcslen(config.textureFilter.txPath) == 0) {
|
if (::wcslen(config.textureFilter.txPath) == 0) {
|
||||||
api().GetUserDataPath(txPath);
|
api().GetUserDataPath(txPath);
|
||||||
wcscat(txPath, L"/hires_texture");
|
gln_wcscat(txPath, wst("/hires_texture"));
|
||||||
pTexPackPath = txPath;
|
pTexPackPath = txPath;
|
||||||
}
|
}
|
||||||
wchar_t txCachePath[PLUGIN_PATH_SIZE];
|
wchar_t txCachePath[PLUGIN_PATH_SIZE];
|
||||||
|
|
40
src/wst.h
Normal file
40
src/wst.h
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
#ifndef WST_H
|
||||||
|
#define WST_H
|
||||||
|
|
||||||
|
#ifdef ANDROID
|
||||||
|
void gln_wcscat(wchar_t* destination, const wchar_t* source)
|
||||||
|
{
|
||||||
|
const u32 bufSize = 512;
|
||||||
|
char cbuf[bufSize];
|
||||||
|
wcstombs(cbuf, destination, bufSize);
|
||||||
|
std::string dest(cbuf);
|
||||||
|
wcstombs(cbuf, source, bufSize);
|
||||||
|
dest.append(cbuf);
|
||||||
|
mbstowcs(destination, dest.c_str(), PLUGIN_PATH_SIZE);
|
||||||
|
}
|
||||||
|
|
||||||
|
class dummyWString
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
dummyWString(const char * _str)
|
||||||
|
{
|
||||||
|
wchar_t buf[512];
|
||||||
|
mbstowcs(buf, _str, 512);
|
||||||
|
_wstr.assign(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
const wchar_t * c_str() const {
|
||||||
|
return _wstr.c_str();
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::wstring _wstr;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define wst(A) dummyWString(A).c_str()
|
||||||
|
#else // ANDROID
|
||||||
|
#define gln_wcscat wcscat
|
||||||
|
#define wst(A) L##A
|
||||||
|
#endif // ANDROID
|
||||||
|
|
||||||
|
#endif // WST_H
|
Loading…
Reference in New Issue
Block a user