diff -r b72c6db6890b -r 5dc02b23752f src/corelib/io/qdiriterator.cpp --- a/src/corelib/io/qdiriterator.cpp Wed Jun 23 19:07:03 2010 +0300 +++ b/src/corelib/io/qdiriterator.cpp Tue Jul 06 15:10:48 2010 +0300 @@ -287,7 +287,11 @@ const bool dotOrDotDot = fileName[0] == QLatin1Char('.') && ((fileNameSize == 1) ||(fileNameSize == 2 && fileName[1] == QLatin1Char('.'))); - if ((filters & QDir::NoDotAndDotDot) && dotOrDotDot) + if ((filters & QDir::NoDot) && dotOrDotDot && fileNameSize == 1) + return false; + if ((filters & QDir::NoDotDot) && dotOrDotDot && fileNameSize == 2) + return false; + if ((filters & QDir::NoDotAndDotDot) && dotOrDotDot) // ### Qt5 remove (NoDotAndDotDot == NoDot|NoDotDot) return false; // name filter