From c57db7d0076371f9564ac08535d8e02bce1e2bd1 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 19 Mar 2008 14:09:03 +0000 Subject: [PATCH] _kern_read_link() no longer null-terminates the read string. Fixes loading of symlinked libraries. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24467 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/runtime_loader/runtime_loader.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/system/runtime_loader/runtime_loader.c b/src/system/runtime_loader/runtime_loader.c index 3b8a75890e..8b09979372 100644 --- a/src/system/runtime_loader/runtime_loader.c +++ b/src/system/runtime_loader/runtime_loader.c @@ -139,13 +139,14 @@ try_open_executable(const char *dir, int dirLength, const char *name, if (S_ISLNK(stat.st_mode)) { char buffer[PATH_MAX]; - size_t length = PATH_MAX; + size_t length = PATH_MAX - 1; char *lastSlash; // it's a link, indeed status = _kern_read_link(-1, path, buffer, &length); if (status < B_OK) return status; + buffer[length] = '\0'; lastSlash = strrchr(path, '/'); if (buffer[0] != '/' && lastSlash != NULL) {