302
304
logcmdline[0] = 0;
303
305
scriptcmdline[0] = 0;
307
/* the server expects command line arguments to be in local encoding */
309
char *logfile_in_local_encoding = internal_to_local_string_malloc(logfile);
306
310
my_snprintf(logcmdline, sizeof(logcmdline), " --debug 3 --log %s",
311
logfile_in_local_encoding);
312
free(logfile_in_local_encoding);
309
314
if (scriptfile) {
315
char *scriptfile_in_local_encoding = internal_to_local_string_malloc(scriptfile);
310
316
my_snprintf(scriptcmdline, sizeof(scriptcmdline), " --read %s",
317
scriptfile_in_local_encoding);
318
free(scriptfile_in_local_encoding);
314
321
interpret_tilde(savesdir, sizeof(savesdir), "~/.freeciv/saves");
322
internal_to_local_string_buffer(savesdir, savescmdline, sizeof(savescmdline));
316
324
my_snprintf(options, sizeof(options), "-p %d -q 1 -e%s%s --saves \"%s\"",
317
internal_server_port, logcmdline, scriptcmdline, savesdir);
325
internal_server_port, logcmdline, scriptcmdline, savescmdline);
318
326
my_snprintf(cmdline1, sizeof(cmdline1), "./ser %s", options);
319
327
my_snprintf(cmdline2, sizeof(cmdline2), "./server/civserver %s", options);
320
328
my_snprintf(cmdline3, sizeof(cmdline3), "civserver %s", options);
459
467
/* remove challenge file */
460
468
if (challenge_fullname[0] != '\0') {
461
if (remove(challenge_fullname) == -1) {
469
if (fc_remove(challenge_fullname) == -1) {
462
470
freelog(LOG_ERROR, "Couldn't remove temporary file: %s",
463
471
challenge_fullname);