From fd9dae3dd24af30535a4bd977ca7f6a4bc3fea82 Mon Sep 17 00:00:00 2001 From: Aleksander Kaminski Date: Wed, 23 Aug 2023 11:04:16 +0200 Subject: [PATCH] Fix execve not setting errno in some cases DONE: RTOS-556 --- unistd/sys.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/unistd/sys.c b/unistd/sys.c index 1aa8ab96..5e2d5aee 100644 --- a/unistd/sys.c +++ b/unistd/sys.c @@ -110,7 +110,7 @@ int execve(const char *file, char *const argv[], char *const envp[]) sys_common.filePathBuff = calloc(PATH_MAX, sizeof(char)); if (sys_common.execBuff == NULL || sys_common.filePathBuff == NULL) { sys_clear(); - return -ENOMEM; + return SET_ERRNO(-ENOMEM); } interp = sys_common.execBuff; @@ -170,7 +170,7 @@ int execve(const char *file, char *const argv[], char *const envp[]) if (sys_common.sbArgs == NULL) { close(fd); sys_clear(); - return -ENOMEM; + return SET_ERRNO(-ENOMEM); } while (noargs-- > 0) {