musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/src/regex/glob.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/regex/glob.c')
-rw-r--r--src/regex/glob.c 4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/regex/glob.c b/src/regex/glob.c
index 6affee04..5b6ff124 100644
--- a/src/regex/glob.c
+++ b/src/regex/glob.c
@@ -169,8 +169,6 @@ int glob(const char *restrict pat, int flags, int (*errfunc)(const char *path, i
d = "";
}
- if (strlen(p) > PATH_MAX) return GLOB_NOSPACE;
-
if (!errfunc) errfunc = ignore_err;
if (!(flags & GLOB_APPEND)) {
@@ -179,6 +177,8 @@ int glob(const char *restrict pat, int flags, int (*errfunc)(const char *path, i
g->gl_pathv = NULL;
}
+ if (strnlen(p, PATH_MAX+1) > PATH_MAX) return GLOB_NOSPACE;
+
if (*p) error = match_in_dir(d, p, flags, errfunc, &tail);
if (error == GLOB_NOSPACE) {
freelist(&head);
generated by cgit v1.2.1 (git 2.18.0) at 2025年09月10日 10:25:12 +0000

AltStyle によって変換されたページ (->オリジナル) /