fix inadvertently static local var in dynlink get_lfs64
authorRich Felker <dalias@aerifal.cx>
Tue, 11 Apr 2023 13:06:27 +0000 (09:06 -0400)
committerRich Felker <dalias@aerifal.cx>
Tue, 11 Apr 2023 13:06:27 +0000 (09:06 -0400)
commit 246f1c811448f37a44b41cd8df8d0ef9736d95f4 inadvertently
introduced the local variable p as static by declaring it together
with lfs64_list. the function is only reachable under lock, and is not
called reentrantly, so this is not a functional bug, but it is
confusing and inefficient. fix by separating the declarations.

ldso/dynlink.c

index fde5f34..ceca3c9 100644 (file)
@@ -345,7 +345,8 @@ static struct symdef find_sym(struct dso *dso, const char *s, int need_def)
 
 static struct symdef get_lfs64(const char *name)
 {
-       static const char *p, lfs64_list[] =
+       const char *p;
+       static const char lfs64_list[] =
                "aio_cancel\0aio_error\0aio_fsync\0aio_read\0aio_return\0"
                "aio_suspend\0aio_write\0alphasort\0creat\0fallocate\0"
                "fgetpos\0fopen\0freopen\0fseeko\0fsetpos\0fstat\0"