Fix dirent64::namelen calculation (#1538)

Worked fine on my machine where padding seemed to be all zeroed out
but that doesn't appear to be the case elsewhere.

Could try
https://codeberg.org/jbruchon/libjodycode/src/branch/master/dir.c#L92-L110
but needs to be tested.
This commit is contained in:
trapexit
2025-09-30 11:25:19 -05:00
committed by GitHub
parent e6fcebe4f3
commit 25b0bc72df
+4 -2
View File
@@ -2,6 +2,7 @@
#include <cstddef>
#include <cstdint>
#include <cstring>
namespace fs
{
@@ -15,9 +16,10 @@ namespace fs
char name[];
public:
int namelen() const
size_t
namelen() const
{
return (reclen - offsetof(dirent64,name));
return ::strlen(name);
}
};
}