diff --git a/glnx-dirfd.c b/glnx-dirfd.c
index ee25898ad128c032307f7e534a9e8e5d553e8ae5..af4cab825d8e562fa637e5bc5760548b79512e4f 100644
--- a/glnx-dirfd.c
+++ b/glnx-dirfd.c
@@ -199,4 +199,5 @@ glnx_dirfd_iterator_clear (GLnxDirFdIterator *dfd_iter)
   GLnxRealDirfdIterator *real_dfd_iter = (GLnxRealDirfdIterator*) dfd_iter;
   /* fd is owned by dfd_iter */
   (void) closedir (real_dfd_iter->d);
+  real_dfd_iter->initialized = FALSE;
 }