compilation fixes

master
Eduardo Bart 13 years ago
parent 6451e36240
commit 21bcbf9a97

@ -5,7 +5,8 @@ SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake;${CMAKE_MODULE_PATH}")
# find needed packages # find needed packages
SET(Boost_USE_STATIC_LIBS ON) SET(Boost_USE_STATIC_LIBS ON)
FIND_PACKAGE(Boost COMPONENTS system REQUIRED) SET(Boost_USE_MULTITHREADED ON)
FIND_PACKAGE(Boost COMPONENTS system regex REQUIRED)
FIND_PACKAGE(OpenGL REQUIRED) FIND_PACKAGE(OpenGL REQUIRED)
FIND_PACKAGE(Lua51 REQUIRED) FIND_PACKAGE(Lua51 REQUIRED)
FIND_PACKAGE(YamlCpp REQUIRED) FIND_PACKAGE(YamlCpp REQUIRED)
@ -52,7 +53,7 @@ SET(SOURCES
# game sources # game sources
src/main.cpp src/main.cpp
src/menustate.cpp src/menustate.cpp
# framework sources # framework sources
src/framework/framebuffer.cpp src/framework/framebuffer.cpp
src/framework/font.cpp src/framework/font.cpp
@ -72,8 +73,11 @@ SET(SOURCES
IF(WIN32) IF(WIN32)
SET(SOURCES ${SOURCES} src/framework/win32platform.cpp) SET(SOURCES ${SOURCES} src/framework/win32platform.cpp)
SET(ADDITIONAL_LIBRARIES ws2_32)
ADD_DEFINITIONS(-D_WIN32_WINNT=0x0501)
ELSE(WIN32) ELSE(WIN32)
SET(SOURCES ${SOURCES} src/framework/x11platform.cpp) SET(SOURCES ${SOURCES} src/framework/x11platform.cpp)
SET(ADDITIONAL_LIBRARIES pthread GLU)
ENDIF(WIN32) ENDIF(WIN32)
# target executable # target executable
@ -86,4 +90,5 @@ TARGET_LINK_LIBRARIES(otclient
${LUA51_LIBRARY} ${LUA51_LIBRARY}
${YAMLCPP_LIBRARY} ${YAMLCPP_LIBRARY}
${PHYSFS_LIBRARY} ${PHYSFS_LIBRARY}
${PNG_LIBRARY}) ${PNG_LIBRARY}
${ADDITIONAL_LIBRARIES})

@ -53,7 +53,7 @@ bool Configs::load(const std::string& fileName)
m_confsMap[key] = value; m_confsMap[key] = value;
} }
} catch (YAML::ParserException& e) { } catch (YAML::ParserException& e) {
error("Malformed configuration file!"); logError("Malformed configuration file!");
return false; return false;
} }
@ -101,7 +101,7 @@ const std::string &Configs::getString(const std::string &key) const
{ {
auto it = m_confsMap.find(key); auto it = m_confsMap.find(key);
if(it == m_confsMap.end()) { if(it == m_confsMap.end()) {
warning("Config value %s not found", key.c_str()); logWarning("Config value %s not found", key.c_str());
static std::string emptystr; static std::string emptystr;
return emptystr; return emptystr;
} }
@ -112,7 +112,7 @@ float Configs::getFloat(const std::string &key) const
{ {
auto it = m_confsMap.find(key); auto it = m_confsMap.find(key);
if(it == m_confsMap.end()) { if(it == m_confsMap.end()) {
warning("Config value %s not found", key.c_str()); logWarning("Config value %s not found", key.c_str());
return 0; return 0;
} }
return convertType<float, std::string>(it->second); return convertType<float, std::string>(it->second);
@ -122,7 +122,7 @@ bool Configs::getBoolean(const std::string &key) const
{ {
auto it = m_confsMap.find(key); auto it = m_confsMap.find(key);
if(it == m_confsMap.end()) { if(it == m_confsMap.end()) {
warning("Config value %s not found", key.c_str()); logWarning("Config value %s not found", key.c_str());
return 0; return 0;
} }
return (it->second == "true"); return (it->second == "true");
@ -132,7 +132,7 @@ int Configs::getInteger(const std::string &key) const
{ {
auto it = m_confsMap.find(key); auto it = m_confsMap.find(key);
if(it == m_confsMap.end()) { if(it == m_confsMap.end()) {
warning("Config value %s not found", key.c_str()); logWarning("Config value %s not found", key.c_str());
return 0; return 0;
} }
return convertType<int, std::string>(it->second); return convertType<int, std::string>(it->second);

@ -77,7 +77,7 @@ void Engine::run()
Platform::poll(); Platform::poll();
//poll network events //poll network events
//debug("%d", g_connections.poll()); //logDebug("%d", g_connections.poll());
// update before redering // update before redering
ticks = Platform::getTicks(); ticks = Platform::getTicks();
@ -113,7 +113,7 @@ void Engine::run()
static ConnectionPtr connection = g_connections.createConnection(); static ConnectionPtr connection = g_connections.createConnection();
if(connection->getLastError()){ if(connection->getLastError()){
error("%s", connection->getLastError().message().c_str()); logError("%s", connection->getLastError().message().c_str());
} }
else{ else{
if(!connection->isConnecting() && !connection->isConnected()){ if(!connection->isConnecting() && !connection->isConnected()){
@ -121,7 +121,7 @@ void Engine::run()
} }
if(!connection->isConnected()){ if(!connection->isConnected()){
debug("still not connected."); logDebug("still not connected.");
} }
} }
*/ */

@ -37,13 +37,13 @@ Font::Font() :
bool Font::load(const std::string& file) bool Font::load(const std::string& file)
{ {
if(!g_resources.fileExists(file)) { if(!g_resources.fileExists(file)) {
error("Font file %s does not exists", file.c_str()); logError("Font file %s does not exists", file.c_str());
return false; return false;
} }
std::string fileContents = g_resources.loadTextFile(file); std::string fileContents = g_resources.loadTextFile(file);
if(!fileContents.size()) { if(!fileContents.size()) {
error("Empty font file \"%s", file.c_str()); logError("Empty font file \"%s", file.c_str());
return false; return false;
} }
@ -70,7 +70,7 @@ bool Font::load(const std::string& file)
m_texture = g_textures.get("fonts/" + textureName); m_texture = g_textures.get("fonts/" + textureName);
if(!m_texture) { if(!m_texture) {
error("Failed to load image for font \"%s\"", file.c_str()); logError("Failed to load image for font \"%s\"", file.c_str());
return false; return false;
} }
@ -94,7 +94,7 @@ bool Font::load(const std::string& file)
m_glyphsSize[glyph].setWidth(glyphWidth); m_glyphsSize[glyph].setWidth(glyphWidth);
} }
} catch (YAML::ParserException& e) { } catch (YAML::ParserException& e) {
error("Malformed font file \"%s\"", file.c_str()); logError("Malformed font file \"%s\"", file.c_str());
return false; return false;
} }

@ -48,7 +48,7 @@ Font* Fonts::get(const std::string& fontName)
if(it != m_fonts.end()) { if(it != m_fonts.end()) {
return it->second.get(); return it->second.get();
} }
error("Font \"%s\" not found", fontName.c_str()); logError("Font \"%s\" not found", fontName.c_str());
return NULL; return NULL;
} }
@ -58,6 +58,6 @@ Font *Fonts::getDefault()
if(font) { if(font) {
return font; return font;
} }
fatal("Default font not found!"); logFatal("Default font not found!");
return NULL; return NULL;
} }

@ -43,8 +43,8 @@ void Graphics::init()
glShadeModel(GL_SMOOTH); glShadeModel(GL_SMOOTH);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
notice("GPU %s", (const char*)glGetString(GL_RENDERER)); logInfo("GPU %s", (const char*)glGetString(GL_RENDERER));
notice("OpenGL %s", (const char*)glGetString(GL_VERSION)); logInfo("OpenGL %s", (const char*)glGetString(GL_VERSION));
} }
void Graphics::terminate() void Graphics::terminate()

@ -27,8 +27,9 @@
#include <iostream> #include <iostream>
#include <cstdlib> #include <cstdlib>
#include <stdarg.h>
void Logger::log(int level, const char *trace, const char *format, ...) void Logger::_log(int level, const char *trace, const char *format, ...)
{ {
va_list args; va_list args;
std::string strace; std::string strace;

@ -37,23 +37,23 @@ enum ELogLevel {
LDEBUG LDEBUG
}; };
void log(int level, const char *trace, const char *format, ...); void _log(int level, const char *trace, const char *format, ...);
} }
#define fatal(...) Logger::log(Logger::LFATAL, NULL, __VA_ARGS__) #define logFatal(...) Logger::_log(Logger::LFATAL, NULL, __VA_ARGS__)
#define error(...) Logger::log(Logger::LERROR, NULL, __VA_ARGS__) #define logError(...) Logger::_log(Logger::LERROR, NULL, __VA_ARGS__)
#define warning(...) Logger::log(Logger::LWARNING, NULL, __VA_ARGS__) #define logWarning(...) Logger::_log(Logger::LWARNING, NULL, __VA_ARGS__)
#define debug(...) Logger::log(Logger::LDEBUG, NULL, __VA_ARGS__) #define logDebug(...) Logger::_log(Logger::LDEBUG, NULL, __VA_ARGS__)
#define notice(...) Logger::log(Logger::LNOTICE, NULL, __VA_ARGS__) #define logInfo(...) Logger::_log(Logger::LNOTICE, NULL, __VA_ARGS__)
#define trace() Logger::log(Logger::LDEBUG, __PRETTY_FUNCTION__, "") #define logTrace() Logger::_log(Logger::LDEBUG, __PRETTY_FUNCTION__, "")
#define tdebug(...) Logger::log(Logger::LDEBUG, __PRETTY_FUNCTION__, __VA_ARGS__) #define logDebugTrace(...) Logger::_log(Logger::LDEBUG, __PRETTY_FUNCTION__, __VA_ARGS__)
struct Dump { struct Dump {
public: public:
Dump() { } Dump() { }
~Dump() { debug(m_buf.str().c_str()); } ~Dump() { logDebug(m_buf.str().c_str()); }
template<class T> Dump &operator<<(const T &x) { m_buf << x << " "; return *this; } template<class T> Dump &operator<<(const T &x) { m_buf << x << " "; return *this; }
private: private:
std::ostringstream m_buf; std::ostringstream m_buf;

@ -23,6 +23,8 @@
#include "connection.h" #include "connection.h"
#include <boost/bind.hpp>
Connection::Connection(boost::asio::io_service& ioService) Connection::Connection(boost::asio::io_service& ioService)
: m_socket(ioService), m_resolver(ioService) : m_socket(ioService), m_resolver(ioService)
{ {
@ -44,7 +46,7 @@ void Connection::stop()
void Connection::connect(const std::string& ip, uint16 port) void Connection::connect(const std::string& ip, uint16 port)
{ {
if(m_connecting){ if(m_connecting){
error("Already is connecting."); logError("Already is connecting.");
return; return;
} }
@ -52,16 +54,16 @@ void Connection::connect(const std::string& ip, uint16 port)
m_ip = ip; m_ip = ip;
m_port = port; m_port = port;
debug("connecting..."); logDebug("connecting...");
//first resolve dns //first resolve dns
boost::asio::ip::tcp::resolver::query query(ip, 80); boost::asio::ip::tcp::resolver::query query(ip, "80");
m_resolver.async_resolve(query, boost::bind(&Connection::onResolveDns, this, boost::asio::placeholders::error, boost::asio::placeholders::iterator)); m_resolver.async_resolve(query, boost::bind(&Connection::onResolveDns, this, boost::asio::placeholders::error, boost::asio::placeholders::iterator));
} }
void Connection::onResolveDns(const boost::system::error_code& error, boost::asio::ip::tcp::resolver::iterator endpoint_iterator) void Connection::onResolveDns(const boost::system::error_code& error, boost::asio::ip::tcp::resolver::iterator endpoint_iterator)
{ {
debug("resolving dns.."); logDebug("resolving dns..");
if(error){ if(error){
m_connecting = false; m_connecting = false;
m_lastError = error; m_lastError = error;
@ -82,5 +84,5 @@ void Connection::onConnect(const boost::system::error_code& error)
m_connected = true; m_connected = true;
notice("Connected on %s.", m_ip.c_str()); logInfo("Connected on %s.", m_ip.c_str());
} }

@ -26,6 +26,8 @@
#include "../prerequisites.h" #include "../prerequisites.h"
#include <boost/asio.hpp>
class Connection class Connection
{ {
public: public:

@ -63,9 +63,6 @@ typedef int8_t int8;
#include <boost/algorithm/string.hpp> #include <boost/algorithm/string.hpp>
#include <boost/lexical_cast.hpp> #include <boost/lexical_cast.hpp>
#include <boost/foreach.hpp> #include <boost/foreach.hpp>
#include <boost/asio.hpp>
#include <boost/bind.hpp>
#define foreach BOOST_FOREACH #define foreach BOOST_FOREACH
// yaml // yaml

@ -43,14 +43,14 @@ bool Resources::setWriteDir(const std::string& path)
bool ret = (bool)PHYSFS_setWriteDir(path.c_str()); bool ret = (bool)PHYSFS_setWriteDir(path.c_str());
if(!ret) if(!ret)
error("Could not set the path \"%s\" as write directory, file write will not work.", path.c_str()); logError("Could not set the path \"%s\" as write directory, file write will not work.", path.c_str());
return ret; return ret;
} }
bool Resources::addToSearchPath(const std::string& path, bool insertInFront /*= true*/) bool Resources::addToSearchPath(const std::string& path, bool insertInFront /*= true*/)
{ {
if(!PHYSFS_addToSearchPath(path.c_str(), insertInFront ? 0 : 1)) { if(!PHYSFS_addToSearchPath(path.c_str(), insertInFront ? 0 : 1)) {
error("Error while adding \"%s\" to resources search path: %s", path.c_str(), PHYSFS_getLastError()); logError("Error while adding \"%s\" to resources search path: %s", path.c_str(), PHYSFS_getLastError());
return false; return false;
} }
return true; return true;
@ -65,7 +65,7 @@ uchar *Resources::loadFile(const std::string& fileName, uint *fileSize)
{ {
PHYSFS_file *file = PHYSFS_openRead(fileName.c_str()); PHYSFS_file *file = PHYSFS_openRead(fileName.c_str());
if(!file) { if(!file) {
error("Failed to load file \"%s\": %s", fileName.c_str(), PHYSFS_getLastError()); logError("Failed to load file \"%s\": %s", fileName.c_str(), PHYSFS_getLastError());
*fileSize = 0; *fileSize = 0;
return NULL; return NULL;
} }
@ -94,7 +94,7 @@ bool Resources::saveFile(const std::string &fileName, const uchar *data, uint si
{ {
PHYSFS_file *file = PHYSFS_openWrite(fileName.c_str()); PHYSFS_file *file = PHYSFS_openWrite(fileName.c_str());
if(!file) { if(!file) {
error("Failed to save file \"%s\": %s", fileName.c_str(), PHYSFS_getLastError()); logError("Failed to save file \"%s\": %s", fileName.c_str(), PHYSFS_getLastError());
return false; return false;
} }

@ -44,7 +44,7 @@ TexturePtr Textures::get(const std::string& textureFile)
if(!texture) { // load texture if(!texture) { // load texture
// currently only png textures are supported // currently only png textures are supported
if(!boost::ends_with(textureFile, ".png")) { if(!boost::ends_with(textureFile, ".png")) {
error("Unable to load texture %s, file format no supported.", textureFile.c_str()); logError("Unable to load texture %s, file format no supported.", textureFile.c_str());
return texture; return texture;
} }
@ -55,7 +55,7 @@ TexturePtr Textures::get(const std::string& textureFile)
texture = TexturePtr(TextureLoader::loadPNG(textureFileData)); texture = TexturePtr(TextureLoader::loadPNG(textureFileData));
if(!texture) if(!texture)
error("Unable to load texture %s, loading error.", textureFile.c_str()); logError("Unable to load texture %s, loading error.", textureFile.c_str());
delete[] textureFileData; delete[] textureFileData;
} }

@ -43,7 +43,7 @@ R convertType(T t)
try { try {
ret = boost::lexical_cast<R>(t); ret = boost::lexical_cast<R>(t);
} catch(boost::bad_lexical_cast bad) { } catch(boost::bad_lexical_cast bad) {
error("Error converting type: %s", bad.what()); logError("Error converting type: %s", bad.what());
} }
return ret; return ret;
} }

@ -64,7 +64,7 @@ void Platform::init(const char *appName)
wc.lpszClassName = win32.appName.c_str(); // Set The Class Name wc.lpszClassName = win32.appName.c_str(); // Set The Class Name
if(!RegisterClassA(&wc)) if(!RegisterClassA(&wc))
fatal("Failed to register the window class."); logFatal("Failed to register the window class.");
// force first tick // force first tick
Platform::getTicks(); Platform::getTicks();
@ -79,7 +79,7 @@ void Platform::terminate()
if(win32.instance) { if(win32.instance) {
if(!UnregisterClassA(win32.appName.c_str(), win32.instance)) if(!UnregisterClassA(win32.appName.c_str(), win32.instance))
error("Unregister class failed."); logError("Unregister class failed.");
win32.instance = NULL; win32.instance = NULL;
} }
@ -139,7 +139,7 @@ bool Platform::createWindow(int x, int y, int width, int height, int minWidth, i
if(!win32.window) { if(!win32.window) {
terminate(); terminate();
fatal("Window creation error."); logFatal("Window creation error.");
return false; return false;
} }
@ -168,31 +168,31 @@ bool Platform::createWindow(int x, int y, int width, int height, int minWidth, i
if(!(win32.hdc = GetDC(win32.window))) { if(!(win32.hdc = GetDC(win32.window))) {
terminate(); terminate();
fatal("Can't Create A GL Device Context."); logFatal("Can't Create A GL Device Context.");
return false; return false;
} }
if(!(pixelFormat = ChoosePixelFormat(win32.hdc, &pfd))) { if(!(pixelFormat = ChoosePixelFormat(win32.hdc, &pfd))) {
terminate(); terminate();
fatal("Can't Find A Suitable PixelFormat."); logFatal("Can't Find A Suitable PixelFormat.");
return false; return false;
} }
if(!SetPixelFormat(win32.hdc, pixelFormat, &pfd)) { if(!SetPixelFormat(win32.hdc, pixelFormat, &pfd)) {
terminate(); terminate();
fatal("Can't Set The PixelFormat."); logFatal("Can't Set The PixelFormat.");
return false; return false;
} }
if(!(win32.hrc = wglCreateContext(win32.hdc))) { if(!(win32.hrc = wglCreateContext(win32.hdc))) {
terminate(); terminate();
fatal("Can't Create A GL Rendering Context."); logFatal("Can't Create A GL Rendering Context.");
return false; return false;
} }
if(!wglMakeCurrent(win32.hdc, win32.hrc)) { if(!wglMakeCurrent(win32.hdc, win32.hrc)) {
terminate(); terminate();
fatal("Can't Activate The GL Rendering Context."); logFatal("Can't Activate The GL Rendering Context.");
return false; return false;
} }
@ -203,24 +203,24 @@ void Platform::destroyWindow()
{ {
if(win32.hrc) { if(win32.hrc) {
if(!wglMakeCurrent(NULL, NULL)) if(!wglMakeCurrent(NULL, NULL))
error("Release Of DC And RC Failed."); logError("Release Of DC And RC Failed.");
if(!wglDeleteContext(win32.hrc)) if(!wglDeleteContext(win32.hrc))
error("Release Rendering Context Failed."); logError("Release Rendering Context Failed.");
win32.hrc = NULL; win32.hrc = NULL;
} }
if(win32.hdc) { if(win32.hdc) {
if(!ReleaseDC(win32.window, win32.hdc)) if(!ReleaseDC(win32.window, win32.hdc))
error("Release Device Context Failed."); logError("Release Device Context Failed.");
win32.hdc = NULL; win32.hdc = NULL;
} }
if(win32.window) { if(win32.window) {
if(!DestroyWindow(win32.window)) if(!DestroyWindow(win32.window))
error("Destroy window failed."); logError("Destroy window failed.");
win32.window = NULL; win32.window = NULL;
} }
@ -355,7 +355,7 @@ const char *Platform::getAppUserDir()
std::stringstream sdir; std::stringstream sdir;
sdir << PHYSFS_getUserDir() << "/." << win32.appName << "/"; sdir << PHYSFS_getUserDir() << "/." << win32.appName << "/";
if((mkdir(sdir.str().c_str()) != 0) && (errno != EEXIST)) if((mkdir(sdir.str().c_str()) != 0) && (errno != EEXIST))
error("Couldn't create directory for saving configuration file. (%s)", sdir.str().c_str()); logError("Couldn't create directory for saving configuration file. (%s)", sdir.str().c_str());
return sdir.str().c_str(); return sdir.str().c_str();
} }

@ -233,18 +233,18 @@ void Platform::init(const char *appName)
// open display // open display
x11.display = XOpenDisplay(0); x11.display = XOpenDisplay(0);
if(!x11.display) if(!x11.display)
fatal("Failed to open X display"); logFatal("Failed to open X display");
// check if GLX is supported on this display // check if GLX is supported on this display
if(!glXQueryExtension(x11.display, 0, 0)) if(!glXQueryExtension(x11.display, 0, 0))
fatal("GLX not supported"); logFatal("GLX not supported");
// retrieve GLX version // retrieve GLX version
int glxMajor; int glxMajor;
int glxMinor; int glxMinor;
if(!glXQueryVersion(x11.display, &glxMajor, &glxMinor)) if(!glXQueryVersion(x11.display, &glxMajor, &glxMinor))
fatal("Unable to query GLX version"); logFatal("Unable to query GLX version");
notice("GLX version %d.%d", glxMajor, glxMinor); logInfo("GLX version %d.%d", glxMajor, glxMinor);
// clipboard related atoms // clipboard related atoms
x11.atomClipboard = XInternAtom(x11.display, "CLIPBOARD", False); x11.atomClipboard = XInternAtom(x11.display, "CLIPBOARD", False);
@ -346,7 +346,7 @@ void Platform::poll()
keysym != XK_Delete && keysym != XK_Delete &&
keysym != XK_Escape keysym != XK_Escape
) { ) {
//debug("char: %c code: %d", buf[0], (uchar)buf[0]); //logDebug("char: %c code: %d", buf[0], (uchar)buf[0]);
inputEvent.type = EV_TEXT_ENTER; inputEvent.type = EV_TEXT_ENTER;
inputEvent.key.keychar = buf[0]; inputEvent.key.keychar = buf[0];
inputEvent.key.keycode = KC_UNKNOWN; inputEvent.key.keycode = KC_UNKNOWN;
@ -491,12 +491,12 @@ bool Platform::createWindow(int x, int y, int width, int height, int minWidth, i
// choose OpenGL, RGBA, double buffered, visual // choose OpenGL, RGBA, double buffered, visual
x11.visual = glXChooseVisual(x11.display, DefaultScreen(x11.display), attrList); x11.visual = glXChooseVisual(x11.display, DefaultScreen(x11.display), attrList);
if(!x11.visual) if(!x11.visual)
fatal("RGBA/Double buffered visual not supported"); logFatal("RGBA/Double buffered visual not supported");
// create GLX context // create GLX context
x11.glxContext = glXCreateContext(x11.display, x11.visual, 0, GL_TRUE); x11.glxContext = glXCreateContext(x11.display, x11.visual, 0, GL_TRUE);
if(!x11.glxContext) if(!x11.glxContext)
fatal("Unable to create GLX context"); logFatal("Unable to create GLX context");
// color map // color map
x11.colormap = XCreateColormap(x11.display, x11.colormap = XCreateColormap(x11.display,
@ -529,7 +529,7 @@ bool Platform::createWindow(int x, int y, int width, int height, int minWidth, i
&wa); &wa);
if(!x11.window) if(!x11.window)
fatal("Unable to create X window"); logFatal("Unable to create X window");
// create input context (to have better key input handling) // create input context (to have better key input handling)
if(XSupportsLocale()) { if(XSupportsLocale()) {
@ -541,14 +541,14 @@ bool Platform::createWindow(int x, int y, int width, int height, int minWidth, i
XIMPreeditNothing | XIMStatusNothing, XIMPreeditNothing | XIMStatusNothing,
XNClientWindow, x11.window, NULL); XNClientWindow, x11.window, NULL);
if(!x11.xic) if(!x11.xic)
error("Unable to create the input context"); logError("Unable to create the input context");
} else } else
error("Failed to open an input method"); logError("Failed to open an input method");
} else } else
error("X11 does not support the current locale"); logError("X11 does not support the current locale");
if(!x11.xic) if(!x11.xic)
warning("Input of special keys maybe messed up because we couldn't create an input context"); logWarning("Input of special keys maybe messed up because we couldn't create an input context");
// set window minimum size // set window minimum size
@ -826,6 +826,6 @@ const char *Platform::getAppUserDir()
std::stringstream sdir; std::stringstream sdir;
sdir << PHYSFS_getUserDir() << "/." << x11.appName << "/"; sdir << PHYSFS_getUserDir() << "/." << x11.appName << "/";
if((mkdir(sdir.str().c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) != 0) && (errno != EEXIST)) if((mkdir(sdir.str().c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) != 0) && (errno != EEXIST))
error("Couldn't create directory for saving configuration file. (%s)", sdir.str().c_str()); logError("Couldn't create directory for saving configuration file. (%s)", sdir.str().c_str());
return sdir.str().c_str(); return sdir.str().c_str();
} }

@ -91,9 +91,9 @@ int main(int argc, const char *argv[])
// load configurations // load configurations
if(!g_configs.load("config.yml")) if(!g_configs.load("config.yml"))
notice("Could not read configuration file, default configurations will be used."); logInfo("Could not read configuration file, default configurations will be used.");
notice("OTClient 0.1.0"); logInfo("OTClient 0.1.0");
// create the window // create the window
Platform::createWindow(g_configs.getInteger("window x"), g_configs.getInteger("window y"), Platform::createWindow(g_configs.getInteger("window x"), g_configs.getInteger("window y"),

Loading…
Cancel
Save