This is an automated email from the git hooks/post-receive script.

thansen pushed a commit to branch master
in repository aseprite.

commit 382881ad669443b9fc072e87f592cfefee5d041b
Author: Tony Narlock <[email protected]>
Date:   Tue Dec 8 02:30:21 2015 -0600

    Support for FreeBSD get_app_path
    
    Fixes #889
    
    Add support with and without procfs.
    
    See also: 
https://www.libsdl.org/tmp/SDL/src/filesystem/unix/SDL_sysfilesystem.c
---
 src/base/fs_unix.h | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/base/fs_unix.h b/src/base/fs_unix.h
index 6c1f51e..77e4e79 100644
--- a/src/base/fs_unix.h
+++ b/src/base/fs_unix.h
@@ -16,6 +16,8 @@
 
 #if __APPLE__
 #include <mach-o/dyld.h>
+#elif __FreeBSD__
+#include <sys/sysctl.h>
 #endif
 
 #include "base/path.h"
@@ -120,15 +122,16 @@ std::string get_app_path()
   std::vector<char> path(MAXPATHLEN);
 
 #if __APPLE__
-
   uint32_t size = path.size();
   while (_NSGetExecutablePath(&path[0], &size) == -1)
     path.resize(size);
-
-#else
-
+#elif __FreeBSD__
+  size_t size = path.size();
+  const int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
+  while (sysctl(mib, 4, &path[0], &size, NULL, 0) == -1)
+      path.resize(size);
+#else  /* linux */
   readlink("/proc/self/exe", &path[0], path.size());
-
 #endif
 
   return std::string(&path[0]);

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-games/aseprite.git

_______________________________________________
Pkg-games-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

Reply via email to