diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-01 14:36:36 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-01 14:36:36 +0000 |
| commit | 0747c2dff9289db6204b82501d03447f3ec6cc99 (patch) | |
| tree | ecca83ee860dfa5293f4dba9233820579a4bf4ac /src/engine/e_engine.c | |
| parent | 622dbc6f3e5a5f398af8c6ef98d057a200c813a0 (diff) | |
| download | zcatch-0747c2dff9289db6204b82501d03447f3ec6cc99.tar.gz zcatch-0747c2dff9289db6204b82501d03447f3ec6cc99.zip | |
fixed remote console. some gui tweaks aswell.
Diffstat (limited to 'src/engine/e_engine.c')
| -rw-r--r-- | src/engine/e_engine.c | 45 |
1 files changed, 38 insertions, 7 deletions
diff --git a/src/engine/e_engine.c b/src/engine/e_engine.c index 6fe61efe..04094573 100644 --- a/src/engine/e_engine.c +++ b/src/engine/e_engine.c @@ -78,7 +78,7 @@ void engine_parse_arguments(int argc, char **argv) /* load the configuration */ int i; int abs = 0; - const char *config_filename = "default.cfg"; + const char *config_filename = "settings.cfg"; char buf[1024]; for(i = 1; i < argc; i++) { @@ -91,15 +91,15 @@ void engine_parse_arguments(int argc, char **argv) } if(abs) - config_load(config_filename); + console_execute_file(config_filename); else - config_load(engine_savepath(config_filename, buf, sizeof(buf))); + console_execute_file(engine_savepath(config_filename, buf, sizeof(buf))); /* search arguments for overrides */ { int i; for(i = 1; i < argc; i++) - config_set(argv[i]); + console_execute_line(argv[i]); } /* set default servers and load from disk*/ @@ -107,12 +107,43 @@ void engine_parse_arguments(int argc, char **argv) mastersrv_load(); } -void engine_writeconfig() + +static IOHANDLE config_file = 0; + +int engine_config_write_start() { - char buf[1024]; - config_save(engine_savepath("default.cfg", buf, sizeof(buf))); + char filename[1024]; + config_save(engine_savepath("settings.cfg", filename, sizeof(filename))); + + config_file = io_open(filename, IOFLAG_WRITE); + if(config_file == 0) + return -1; + return 0; } +void engine_config_write_line(const char *line) +{ + if(config_file) + { +#if defined(CONF_FAMILY_WINDOWS) + static const char newline[] = "\r\n"; +#else + static const char newline[] = "\n"; +#endif + io_write(config_file, line, strlen(line)); + io_write(config_file, newline, sizeof(newline)-1); + } +} + +void engine_config_write_stop() +{ + io_close(config_file); + config_file = 0; +} +/* +void engine_writeconfig() +{ +}*/ static int perf_tick = 1; static PERFORMACE_INFO *current = 0; |