X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fbsd-os.c;h=f8682e265bae78c6720818aee2c5d732be7e59b5;hb=cdd026dddac3eaddbaa0221503e49e2673d54545;hp=3b883796e07076d2e5652f5ace295b4b02e612c0;hpb=f55dc323429b8a4be5a9620cc44f1e30a729442f;p=sbcl.git diff --git a/src/runtime/bsd-os.c b/src/runtime/bsd-os.c index 3b88379..f8682e2 100644 --- a/src/runtime/bsd-os.c +++ b/src/runtime/bsd-os.c @@ -82,7 +82,7 @@ static void openbsd_init(); void os_init(char *argv[], char *envp[]) { - os_vm_page_size = getpagesize(); + os_vm_page_size = BACKEND_PAGE_BYTES; #ifdef __NetBSD__ netbsd_init(); @@ -428,7 +428,7 @@ futex_wake(int *lock_word, int n) #endif char * -os_get_runtime_executable_path() +os_get_runtime_executable_path(int external) { char path[PATH_MAX + 1]; @@ -456,20 +456,16 @@ os_get_runtime_executable_path() } #elif defined(LISP_FEATURE_NETBSD) || defined(LISP_FEATURE_OPENBSD) char * -os_get_runtime_executable_path() +os_get_runtime_executable_path(int external) { struct stat sb; - char *path = strdup("/proc/curproc/file"); - if (path && ((stat(path, &sb)) == 0)) - return path; - else { - fprintf(stderr, "Couldn't stat /proc/curproc/file; is /proc mounted?\n"); - return NULL; - } + if (!external && stat("/proc/curproc/file", &sb) == 0) + return copied_string("/proc/curproc/file"); + return NULL; } #else /* Not DARWIN or FREEBSD or NETBSD or OPENBSD */ char * -os_get_runtime_executable_path() +os_get_runtime_executable_path(int external) { return NULL; }