Fixed utf8 issue with avatar cache and server logging.
This commit is contained in:
@@ -38,8 +38,6 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
QtToolsInterface *CreateQtToolsWrapper();
|
||||
|
||||
|
||||
ConfigFile::ConfigFile(int argc, char **argv) : noWriteAccess(0)
|
||||
{
|
||||
|
||||
@@ -37,6 +37,12 @@ NonQtHelper::stringToUtf8(const std::string &myString)
|
||||
return ConvHelper::NativeToUtf8(myString);
|
||||
}
|
||||
|
||||
std::string
|
||||
NonQtHelper::stringFromUtf8(const std::string &myString)
|
||||
{
|
||||
return ConvHelper::Utf8ToNative(myString);
|
||||
}
|
||||
|
||||
std::string
|
||||
NonQtHelper::getDefaultLanguage()
|
||||
{
|
||||
|
||||
@@ -35,6 +35,7 @@ public:
|
||||
~NonQtHelper();
|
||||
|
||||
std::string stringToUtf8(const std::string &);
|
||||
std::string stringFromUtf8(const std::string &);
|
||||
std::string getDefaultLanguage();
|
||||
|
||||
std::string getDataPathStdString(const char *argv0);
|
||||
|
||||
@@ -45,6 +45,7 @@ NonQtToolsWrapper::~NonQtToolsWrapper()
|
||||
}
|
||||
|
||||
std::string NonQtToolsWrapper::stringToUtf8(const std::string &myString) { return myQtHelper->stringToUtf8(myString); }
|
||||
std::string NonQtToolsWrapper::stringFromUtf8(const std::string &myString) { return myQtHelper->stringFromUtf8(myString); }
|
||||
std::string NonQtToolsWrapper::getDefaultLanguage() { return myQtHelper->getDefaultLanguage(); }
|
||||
std::string NonQtToolsWrapper::getDataPathStdString(const char * argv0) { return myQtHelper->getDataPathStdString(argv0); }
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ public:
|
||||
~NonQtToolsWrapper();
|
||||
|
||||
std::string stringToUtf8(const std::string &myString);
|
||||
std::string stringFromUtf8(const std::string &myString);
|
||||
std::string getDefaultLanguage();
|
||||
std::string getDataPathStdString(const char *argv0);
|
||||
|
||||
|
||||
@@ -31,6 +31,12 @@ std::string QtHelper::stringToUtf8(const std::string &myString) {
|
||||
return myUtf8String;
|
||||
}
|
||||
|
||||
std::string QtHelper::stringFromUtf8(const std::string &myString) {
|
||||
QString tmpString = QString::fromUtf8(myString.c_str());
|
||||
|
||||
return tmpString.toStdString();
|
||||
}
|
||||
|
||||
std::string QtHelper::getDefaultLanguage() { return QLocale::system().name().toStdString(); }
|
||||
|
||||
std::string QtHelper::getDataPathStdString(const char * /*argv0*/)
|
||||
|
||||
@@ -29,6 +29,7 @@ public:
|
||||
~QtHelper();
|
||||
|
||||
std::string stringToUtf8(const std::string &);
|
||||
std::string stringFromUtf8(const std::string &);
|
||||
std::string getDefaultLanguage();
|
||||
|
||||
std::string getDataPathStdString(const char *argv0);
|
||||
|
||||
@@ -45,6 +45,7 @@ QtToolsWrapper::~QtToolsWrapper()
|
||||
}
|
||||
|
||||
std::string QtToolsWrapper::stringToUtf8(const std::string &myString) { return myQtHelper->stringToUtf8(myString); }
|
||||
std::string QtToolsWrapper::stringFromUtf8(const std::string &myString) { return myQtHelper->stringFromUtf8(myString); }
|
||||
std::string QtToolsWrapper::getDefaultLanguage() { return myQtHelper->getDefaultLanguage(); }
|
||||
std::string QtToolsWrapper::getDataPathStdString(const char * argv0) { return myQtHelper->getDataPathStdString(argv0); }
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ public:
|
||||
~QtToolsWrapper();
|
||||
|
||||
std::string stringToUtf8(const std::string &myString);
|
||||
std::string stringFromUtf8(const std::string &myString);
|
||||
std::string getDefaultLanguage();
|
||||
std::string getDataPathStdString(const char *argv0);
|
||||
|
||||
|
||||
@@ -28,10 +28,13 @@ public:
|
||||
|
||||
//qthelper.cpp
|
||||
virtual std::string stringToUtf8(const std::string &) =0;
|
||||
virtual std::string stringFromUtf8(const std::string &) =0;
|
||||
virtual std::string getDefaultLanguage() =0;
|
||||
virtual std::string getDataPathStdString(const char *argv0) =0;
|
||||
|
||||
|
||||
};
|
||||
|
||||
QtToolsInterface *CreateQtToolsWrapper();
|
||||
|
||||
#endif
|
||||
|
||||
@@ -21,11 +21,13 @@
|
||||
|
||||
#include "session.h"
|
||||
#include "configfile.h"
|
||||
#include <qttoolsinterface.h>
|
||||
#include <gui/generic/serverguiwrapper.h>
|
||||
#include <net/socket_startup.h>
|
||||
#include <core/loghelper.h>
|
||||
#include <core/thread.h>
|
||||
|
||||
#include <memory>
|
||||
#include <csignal>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
@@ -71,9 +73,10 @@ main(int argc, char *argv[])
|
||||
|
||||
// _CrtSetBreakAlloc(4772);
|
||||
|
||||
auto_ptr<QtToolsInterface> myQtToolsInterface(CreateQtToolsWrapper());
|
||||
//create defaultconfig
|
||||
ConfigFile *myConfig = new ConfigFile(argc, argv);
|
||||
loghelper_init(myConfig->readConfigString("LogDir"));
|
||||
loghelper_init(myQtToolsInterface->stringFromUtf8(myConfig->readConfigString("LogDir")));
|
||||
|
||||
// TODO: Hack
|
||||
#ifndef _WIN32
|
||||
|
||||
+8
-2
@@ -21,6 +21,7 @@
|
||||
#include "game.h"
|
||||
#include "guiinterface.h"
|
||||
#include "configfile.h"
|
||||
#include <qttoolsinterface.h>
|
||||
#include <localenginefactory.h>
|
||||
#include <clientenginefactory.h>
|
||||
#include <net/clientthread.h>
|
||||
@@ -41,6 +42,7 @@ Session::Session(GuiInterface *g, ConfigFile *c)
|
||||
: currentGameNum(0), myNetClient(NULL), myNetServer(NULL), myClientIrcThread(NULL),
|
||||
myGui(g), myConfig(c), myGameType(GAME_TYPE_NONE)
|
||||
{
|
||||
myQtToolsInterface = CreateQtToolsWrapper();
|
||||
}
|
||||
|
||||
|
||||
@@ -50,13 +52,17 @@ Session::~Session()
|
||||
terminateNetworkServer();
|
||||
delete myConfig;
|
||||
myConfig = 0;
|
||||
delete myQtToolsInterface;
|
||||
myQtToolsInterface = 0;
|
||||
}
|
||||
|
||||
bool Session::init()
|
||||
{
|
||||
myAvatarManager.reset(new AvatarManager);
|
||||
bool retVal = myAvatarManager->Init(myConfig->readConfigString("AppDataDir"), myConfig->readConfigString("CacheDir"));
|
||||
addOwnAvatar(myConfig->readConfigString("MyAvatar"));
|
||||
bool retVal = myAvatarManager->Init(
|
||||
myQtToolsInterface->stringFromUtf8(myConfig->readConfigString("AppDataDir")),
|
||||
myQtToolsInterface->stringFromUtf8(myConfig->readConfigString("CacheDir")));
|
||||
addOwnAvatar(myQtToolsInterface->stringFromUtf8(myConfig->readConfigString("MyAvatar")));
|
||||
myAvatarManager->RemoveOldAvatarCacheEntries();
|
||||
return retVal;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ class ClientThread;
|
||||
class ServerManager;
|
||||
class IrcThread;
|
||||
class AvatarManager;
|
||||
class QtToolsInterface;
|
||||
|
||||
class Session{
|
||||
public:
|
||||
@@ -106,6 +107,7 @@ private:
|
||||
GuiInterface *myGui;
|
||||
ConfigFile *myConfig;
|
||||
GameType myGameType;
|
||||
QtToolsInterface *myQtToolsInterface;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user