}
for (;;) {
- struct dirent *de, buf;
+ struct dirent *de;
+ union dirent_storage buf;
int k;
char *p;
- k = readdir_r(d, &buf, &de);
+ k = readdir_r(d, &buf.de, &de);
if (k != 0) {
r = -k;
goto finish;
/* Strip prefix from the suffix */
NULSTR_FOREACH(p, prefixes) {
if (startswith(suffix, p)) {
- suffix += strlen(p);;
+ suffix += strlen(p);
suffix += strspn(suffix, "/");
return process_suffix(prefixes, suffix);
}