diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2013-12-13 09:24:37 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2013-12-13 09:24:37 +0000 |
commit | 7646fa9d26b362581e7c140ea5ccb87f612c9066 (patch) | |
tree | d3e56e69a0f4ea6c2241d18c3945575b2b514eab /libsylph/utils.c | |
parent | 7369bebad1a924e7a4036368ae9274c1ce5fd3af (diff) |
set_startup_dir(): OS X: set application bundle directory rather than /.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@3316 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'libsylph/utils.c')
-rw-r--r-- | libsylph/utils.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/libsylph/utils.c b/libsylph/utils.c index 474d96a6..1e54ebc5 100644 --- a/libsylph/utils.c +++ b/libsylph/utils.c @@ -52,6 +52,10 @@ # include <shlobj.h> #endif +#ifdef __APPLE__ +# include <AppKit/AppKit.h> +#endif + #include "utils.h" #include "socket.h" @@ -2129,6 +2133,21 @@ void set_startup_dir(void) } else startup_dir = g_get_current_dir(); } +#elif defined(__APPLE__) + if (!startup_dir) { + const gchar *path; + NSAutoreleasePool *pool; + + pool = [[NSAutoreleasePool alloc] init]; + + path = [[[NSBundle mainBundle] bundlePath] UTF8String]; + startup_dir = g_strdup(path); + + [pool release]; + + if (!startup_dir) + startup_dir = g_get_current_dir(); + } #else if (!startup_dir) startup_dir = g_get_current_dir(); |