From fdcd8dda0935403185ba307304028d3a682297a9 Mon Sep 17 00:00:00 2001 From: Simon Howard Date: Sat, 30 Jan 2010 16:14:04 +0000 Subject: Change directory to home directory before launching the game, so that recorded demos go somewhere sensible. Subversion-branch: /trunk/chocolate-doom Subversion-revision: 1835 --- NEWS | 3 ++- pkg/osx/Execute.m | 11 +++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index ba7c81b1..ac12bded 100644 --- a/NEWS +++ b/NEWS @@ -9,7 +9,8 @@ no longer necessary to compile binaries for this system by hand. The package includes a simple graphical launcher program and can be installed simply by dragging the "Chocolate - Doom" icon to the Applications folder. + Doom" icon to the Applications folder. (thanks to Rikard Lang + for extensive testing and feedback) * The video mode auto-adjust code will automatically choose windowed mode if no fullscreen video modes are available. * The zone memory size is automatically reduced on systems with diff --git a/pkg/osx/Execute.m b/pkg/osx/Execute.m index bb4eed45..608443e2 100644 --- a/pkg/osx/Execute.m +++ b/pkg/osx/Execute.m @@ -100,6 +100,7 @@ static void DoExec(const char *executable, const char *iwad, const char *args) void ExecuteProgram(const char *executable, const char *iwad, const char *args) { pid_t childpid; + char *homedir; childpid = fork(); @@ -107,6 +108,16 @@ void ExecuteProgram(const char *executable, const char *iwad, const char *args) { signal(SIGCHLD, SIG_DFL); + // Change directory to home dir before launch, so that any demos + // are saved somewhere sensible. + + homedir = getenv("HOME"); + + if (homedir != NULL) + { + chdir(homedir); + } + DoExec(executable, iwad, args); } else -- cgit v1.2.3