From 7fe51ea85b56e3b900f58091e71420ea668c492c Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Tue, 26 Mar 2019 09:36:47 +0000 Subject: [PATCH] use __strchrnul instead of strchr and strlen in execvpe The result is the same but takes less code. Note that __execvpe calls getenv which calls __strchrnul so even using static output the size of the executable won't grow. --- src/process/execvp.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/process/execvp.c b/src/process/execvp.c index 1fdf036f..ef3b9dd5 100644 --- a/src/process/execvp.c +++ b/src/process/execvp.c @@ -28,8 +28,7 @@ int __execvpe(const char *file, char *const argv[], char *const envp[]) for(p=path; ; p=z) { char b[l+k+1]; - z = strchr(p, ':'); - if (!z) z = p+strlen(p); + z = __strchrnul(p, ':'); if (z-p >= l) { if (!*z++) break; continue;