Fixed fileiterator issue for WEC7.

WEC7 does not support FIND_FIRST_EX_LARGE_FETCH with FindFirstFileEx,
but windowsVersion for WEC7 is still resolved as WV_WINDOWS7.

If the FIND_FIRST_EX_LARGE_FETCH flag is passed to FindFirstFileEx
in WEC7, the method does never find any files from given directory.
Changed FIND_FIRST_EX_LARGE_FETCH flag to apply only when Q_OS_WINCE
is not defined.

Task-number: QTBUG-22503
Change-Id: Ic38cf745cda7ee7b23da67dc390ac0e6d04158cd
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
This commit is contained in:
Janne Anttila 2011-09-12 15:00:01 +03:00 committed by Qt by Nokia
parent 4ecf82795d
commit 55a5faadb5

View File

@ -94,10 +94,12 @@ bool QFileSystemIterator::advance(QFileSystemEntry &fileEntry, QFileSystemMetaDa
haveData = true; haveData = true;
int infoLevel = 0 ; // FindExInfoStandard; int infoLevel = 0 ; // FindExInfoStandard;
DWORD dwAdditionalFlags = 0; DWORD dwAdditionalFlags = 0;
#ifndef Q_OS_WINCE
if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) { if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) {
dwAdditionalFlags = 2; // FIND_FIRST_EX_LARGE_FETCH dwAdditionalFlags = 2; // FIND_FIRST_EX_LARGE_FETCH
infoLevel = 1 ; // FindExInfoBasic; infoLevel = 1 ; // FindExInfoBasic;
} }
#endif
int searchOps = 0; // FindExSearchNameMatch int searchOps = 0; // FindExSearchNameMatch
if (onlyDirs) if (onlyDirs)
searchOps = 1 ; // FindExSearchLimitToDirectories searchOps = 1 ; // FindExSearchLimitToDirectories