Hi, this tutorial will solve thist error : [Hidden Content]
First of all, the bug happens when the DB tries to set the locale char set, so let's start.
Open path_to_your_source/db/src/ClientManager.cpp (in my case /usr/src/mainline_released/Srcs/Sever/db/src and search your country,
if you use locale/germany search germany, locale/romania search romania, locale/spain search spain,..
And look for g_stLocale = "latin2";. in my case is latin2 because i use romania, you musn't forgot your charset during the tutorial.
Now open main.cpp, and edit:
std::string g_stLocale = "euckr";
with your charset, in my case:
std::string g_stLocale = "latin2";
Save and exit.
Now open, path_to_your_source/libsql/AsyncSQL.cpp ( libsql no libmysql be careful)
At line 180 edit:
m_stLocale = c_pszLocale;
with:
m_stLocale = "latin2"; ( in my case latin2, you need to put your charset)
And at the end of the file edit:
void CAsyncSQL2::SetLocale(const std::string & stLocale)
{
m_stLocale = stLocale;
QueryLocaleSet();
}
with:
void CAsyncSQL2::SetLocale(const std::string & stLocale)
{
if(m_stLocale != stLocale)
{
m_stLocale = stLocale;
QueryLocaleSet();
}
}
Now, compile.
In putty or virtualbox put the next commands:
cd /path_to_your_source/libsql in my case cd /usr/src/mainline_released/Srcs/Sever/libsql
gmake clean
gmake
After that :
cd /path_to_your_source/db/src
gmake clean
After the clean, open the folder .obj and verify if is empty, if isn't empy, empty it delete all files.
After that
gmake
Now the last step, open navicat connect to your server
and on the databases account, common, player, hotbackup and log, right-click->Database properties.
Set your character set: latin1, latin2, latin5
And collation: I use general but if you fin your country you can put it.
That was all, and sorry for my english.