diff options
author | Zhang Yu <zhangyub@uniontech.com> | 2020-11-08 21:12:40 +0800 |
---|---|---|
committer | Zhang Yu <zhangyub@uniontech.com> | 2020-11-09 15:01:33 +0000 |
commit | f353519e78380c04cffecfa4ceef222f37e8d83a (patch) | |
tree | 212b68cf4c4b4de8f8ab7595a6308ed225e68575 /src/corelib/io | |
parent | 8b086b49b48e7c69413ce08aa534378e54633fe4 (diff) |
Fix regular expression initialize with incorrect filters
The filters used to construct regular expression is the parameter of
QDirIteratorPrivate constructor,and not the member variable
'filters' of QDirIteratorPrivate.
When using filters as QDir::NoFilter to construct QDirIteratorPrivate,
then the regular expression will incorrectly initialize with
QDir::CaseSensitive(result of QDir::NoFilter),and not
Qt::CaseInsensitive(result of QDir::AllEntries).
Therefore, using the '_filters' to replace the parameter 'filters'
Fixes: QTBUG-88227
Pick-to: 5.15
Change-Id: I8a21fe1075fd95981e328a161a978e4fe546c9ca
Reviewed-by: Simon Hausmann <hausmann@gmail.com>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Diffstat (limited to 'src/corelib/io')
-rw-r--r-- | src/corelib/io/qdiriterator.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/corelib/io/qdiriterator.cpp b/src/corelib/io/qdiriterator.cpp index 7a6c4f1edb..d958318708 100644 --- a/src/corelib/io/qdiriterator.cpp +++ b/src/corelib/io/qdiriterator.cpp @@ -125,7 +125,7 @@ class QDirIteratorPrivate { public: QDirIteratorPrivate(const QFileSystemEntry &entry, const QStringList &nameFilters, - QDir::Filters filters, QDirIterator::IteratorFlags flags, bool resolveEngine = true); + QDir::Filters _filters, QDirIterator::IteratorFlags flags, bool resolveEngine = true); void advance(); @@ -161,10 +161,10 @@ public: \internal */ QDirIteratorPrivate::QDirIteratorPrivate(const QFileSystemEntry &entry, const QStringList &nameFilters, - QDir::Filters filters, QDirIterator::IteratorFlags flags, bool resolveEngine) + QDir::Filters _filters, QDirIterator::IteratorFlags flags, bool resolveEngine) : dirEntry(entry) , nameFilters(nameFilters.contains(QLatin1String("*")) ? QStringList() : nameFilters) - , filters(QDir::NoFilter == filters ? QDir::AllEntries : filters) + , filters(QDir::NoFilter == _filters ? QDir::AllEntries : _filters) , iteratorFlags(flags) { #if QT_CONFIG(regularexpression) |