for (;;) {
int k;
- struct dirent buf, *de;
+ struct dirent *de;
+ union dirent_storage buf;
size_t q;
struct stat st;
char *p;
sd_id128_t seqnum_id;
bool have_seqnum;
- k = readdir_r(d, &buf, &de);
+ k = readdir_r(d, &buf.de, &de);
if (k != 0) {
r = -k;
goto finish;