forked from github/server
load inifile in main, it is only used by the server.
this should fix the broken CI build.
This commit is contained in:
parent
b551edbdb3
commit
3428f40f81
|
@ -62,7 +62,6 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
#include <util/crmessage.h>
|
||||
#include <util/event.h>
|
||||
#include <util/language.h>
|
||||
#include <util/filereader.h>
|
||||
#include <util/functions.h>
|
||||
#include <util/log.h>
|
||||
#include <util/lists.h>
|
||||
|
@ -2332,41 +2331,3 @@ int game_id(void) {
|
|||
return get_param_int(global.parameters, "game.id", 0);
|
||||
}
|
||||
|
||||
void load_inifile(dictionary * d)
|
||||
{
|
||||
const char *reportdir = reportpath();
|
||||
const char *datadir = datapath();
|
||||
const char *basedir = basepath();
|
||||
const char *str;
|
||||
|
||||
assert(d);
|
||||
|
||||
str = iniparser_getstring(d, "eressea:base", basedir);
|
||||
if (str != basedir) {
|
||||
set_basepath(str);
|
||||
}
|
||||
str = iniparser_getstring(d, "eressea:report", reportdir);
|
||||
if (str != reportdir) {
|
||||
set_reportpath(str);
|
||||
}
|
||||
str = iniparser_getstring(d, "eressea:data", datadir);
|
||||
if (str != datadir) {
|
||||
set_datapath(str);
|
||||
}
|
||||
|
||||
lomem = iniparser_getint(d, "eressea:lomem", lomem) ? 1 : 0;
|
||||
|
||||
str = iniparser_getstring(d, "eressea:encoding", NULL);
|
||||
if (str && (_strcmpl(str, "utf8") == 0 || _strcmpl(str, "utf-8") == 0)) {
|
||||
enc_gamedata = ENCODING_UTF8;
|
||||
}
|
||||
|
||||
verbosity = iniparser_getint(d, "eressea:verbose", 2);
|
||||
battledebug = iniparser_getint(d, "eressea:debug", battledebug) ? 1 : 0;
|
||||
|
||||
str = iniparser_getstring(d, "eressea:locales", "de,en");
|
||||
make_locales(str);
|
||||
|
||||
if (global.inifile) iniparser_free(global.inifile);
|
||||
global.inifile = d;
|
||||
}
|
||||
|
|
|
@ -301,7 +301,6 @@ extern "C" {
|
|||
|
||||
const char *basepath(void);
|
||||
void set_basepath(const char *);
|
||||
void load_inifile(struct _dictionary_ *d);
|
||||
|
||||
const char *reportpath(void);
|
||||
void set_reportpath(const char *);
|
||||
|
|
41
src/main.c
41
src/main.c
|
@ -22,6 +22,8 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
#include <kernel/config.h>
|
||||
#include <kernel/save.h>
|
||||
#include <kernel/version.h>
|
||||
#include <util/filereader.h>
|
||||
#include <util/language.h>
|
||||
#include "eressea.h"
|
||||
#ifdef USE_CURSES
|
||||
#include "gmtool.h"
|
||||
|
@ -43,6 +45,45 @@ static const char *luafile = 0;
|
|||
static const char *inifile = "eressea.ini";
|
||||
static int memdebug = 0;
|
||||
|
||||
static void load_inifile(dictionary * d)
|
||||
{
|
||||
const char *reportdir = reportpath();
|
||||
const char *datadir = datapath();
|
||||
const char *basedir = basepath();
|
||||
const char *str;
|
||||
|
||||
assert(d);
|
||||
|
||||
str = iniparser_getstring(d, "eressea:base", basedir);
|
||||
if (str != basedir) {
|
||||
set_basepath(str);
|
||||
}
|
||||
str = iniparser_getstring(d, "eressea:report", reportdir);
|
||||
if (str != reportdir) {
|
||||
set_reportpath(str);
|
||||
}
|
||||
str = iniparser_getstring(d, "eressea:data", datadir);
|
||||
if (str != datadir) {
|
||||
set_datapath(str);
|
||||
}
|
||||
|
||||
lomem = iniparser_getint(d, "eressea:lomem", lomem) ? 1 : 0;
|
||||
|
||||
str = iniparser_getstring(d, "eressea:encoding", NULL);
|
||||
if (str && (_strcmpl(str, "utf8") == 0 || _strcmpl(str, "utf-8") == 0)) {
|
||||
enc_gamedata = ENCODING_UTF8;
|
||||
}
|
||||
|
||||
verbosity = iniparser_getint(d, "eressea:verbose", 2);
|
||||
battledebug = iniparser_getint(d, "eressea:debug", battledebug) ? 1 : 0;
|
||||
|
||||
str = iniparser_getstring(d, "eressea:locales", "de,en");
|
||||
make_locales(str);
|
||||
|
||||
if (global.inifile) iniparser_free(global.inifile);
|
||||
global.inifile = d;
|
||||
}
|
||||
|
||||
static void parse_config(const char *filename)
|
||||
{
|
||||
dictionary *d = iniparser_new(filename);
|
||||
|
|
Loading…
Reference in New Issue