Details
Description
In some cases QDir::entryInfoList() reports directories twice on QNX. QDir::entryInfoList uses QFileSystemIterator which uses readdir(2). The latter sometimes reports directories twice, if dircntl() is called to request extra stat information.
There is a QNX bug report (internally COREOS-45869) to track this issue.
In the meantime extra stat information should not be requested (better be correct than faster).
Once the OS issue is solved extra stat information should be requested again.
@@ QFileSystemIterator::QFileSystemIterator(const QFileSystemEntry &entry, QDir::Fi mt_file.reset(p); #if defined(Q_OS_QNX) && defined(__EXT_QNX__READDIR_R) direntSize = maxPathName; - - // Include extra stat information in the readdir() call (d_stat member of dirent_extra_stat). - // This is used in QFileSystemMetaData::fillFromDirEnt() to avoid extra stat() calls when iterating - // over directories - if (dircntl(dir, D_SETFLAG, D_FLAG_STAT) == -1) - lastError = errno; #endif #endif }