diff options
author | Mårten Nordheim <marten.nordheim@qt.io> | 2018-12-20 17:38:03 +0100 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2019-01-22 16:09:05 +0000 |
commit | 524a37f99d3d3115a1b371fd289044d90349a824 (patch) | |
tree | a77aa903eeeb4e66c1cf2d7adb66c528e303d687 /src/corelib/io/qfilesystemengine_win.cpp | |
parent | 4f6a4c7992b2794f1ac026800e9a1ce72d6ab2f3 (diff) |
qfilesystemengine_win: Update LinkType whenever asked
Checking the known flags prevented us from correctly setting the
LinkType flag if we had previously set LinkType as a known flag since
the flag is not reset between updates.
Manifested itself in situations where the file info is loaded and then
the LegacyLinkType flag is checked through
QFileInfoPrivate::checkAttribute. Since the LegacyLinkType is not
set for Windows it will update the metadata and exclude the LinkType
flag.
Change-Id: Iea27f42fe11f36ba2247e52fa9c82b4639666a64
Fixes: QTBUG-72644
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/io/qfilesystemengine_win.cpp')
-rw-r--r-- | src/corelib/io/qfilesystemengine_win.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp index a796fd005a..3f4b46573b 100644 --- a/src/corelib/io/qfilesystemengine_win.cpp +++ b/src/corelib/io/qfilesystemengine_win.cpp @@ -1038,8 +1038,7 @@ bool QFileSystemEngine::fillMetaData(const QFileSystemEntry &entry, QFileSystemM if (what & QFileSystemMetaData::Permissions) fillPermissions(fname, data, what); - if ((what & QFileSystemMetaData::LinkType) - && data.missingFlags(QFileSystemMetaData::LinkType)) { + if (what & QFileSystemMetaData::LinkType) { data.knownFlagsMask |= QFileSystemMetaData::LinkType; if (data.fileAttribute_ & FILE_ATTRIBUTE_REPARSE_POINT) { WIN32_FIND_DATA findData; |