lib/glob.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
From: Josh Law <objecting@objecting.org>
back_str is only used when back_pat is non-NULL, and both are always
set together, so it is safe in practice. Initialize back_str to NULL
to make this safety invariant explicit and silence compiler/static
analysis warnings.
Signed-off-by: Josh Law <objecting@objecting.org>
---
lib/glob.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/glob.c b/lib/glob.c
index 69311568ad3d..7aca76c25bcb 100644
--- a/lib/glob.c
+++ b/lib/glob.c
@@ -47,7 +47,7 @@ bool __pure glob_match(char const *pat, char const *str)
* (no exception for /), it can be easily proved that there's
* never a need to backtrack multiple levels.
*/
- char const *back_pat = NULL, *back_str;
+ char const *back_pat = NULL, *back_str = NULL;
/*
* Loop over each token (character or class) in pat, matching
--
2.34.1
On Thu, 12 Mar 2026 21:52:49 +0000 Josh Law <hlcj1234567@gmail.com> wrote: > back_str is only used when back_pat is non-NULL, and both are always > set together, so it is safe in practice. Initialize back_str to NULL > to make this safety invariant explicit and silence compiler/static > analysis warnings. > > ... > > --- a/lib/glob.c > +++ b/lib/glob.c > @@ -47,7 +47,7 @@ bool __pure glob_match(char const *pat, char const *str) > * (no exception for /), it can be easily proved that there's > * never a need to backtrack multiple levels. > */ > - char const *back_pat = NULL, *back_str; > + char const *back_pat = NULL, *back_str = NULL; > I can certainly believe that some compiler versions will warn about this, but please always quote the warning/error message when fixing such things.
© 2016 - 2026 Red Hat, Inc.