diff options
author | Shane Kearns <shane.kearns@accenture.com> | 2010-09-13 15:34:27 +0100 |
---|---|---|
committer | Shane Kearns <shane.kearns@accenture.com> | 2010-09-13 15:49:34 +0100 |
commit | 9bdc685da9d1e1aac165711197e3b7b887e19da3 (patch) | |
tree | 2e9214120cf3192dc90d45d32ff0bb607b60d7f2 /src/corelib/io/qfilesystemengine_symbian.cpp | |
parent | 7f5417353bd71a63e962851ba598f1e2631f4a25 (diff) |
Integrate symbian file system iterator
Store the relative path in nativeFilePath and prepend it to results,
this behaviour was previously provided by the base class.
Some refactoring to avoid needing to allocate a TFileName on the stack,
and to set the known metadata flags inside the fillFromXXX functions.
Reviewed-By: Thomas Zander
Reviewed-By: mread
Diffstat (limited to 'src/corelib/io/qfilesystemengine_symbian.cpp')
-rw-r--r-- | src/corelib/io/qfilesystemengine_symbian.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/corelib/io/qfilesystemengine_symbian.cpp b/src/corelib/io/qfilesystemengine_symbian.cpp index 6bad860d2c..c339dc4e23 100644 --- a/src/corelib/io/qfilesystemengine_symbian.cpp +++ b/src/corelib/io/qfilesystemengine_symbian.cpp @@ -144,6 +144,8 @@ QString QFileSystemEngine::bundleName(const QFileSystemEntry &entry) void QFileSystemMetaData::fillFromTEntry(const TEntry& entry) { + entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); + knownFlagsMask |= QFileSystemMetaData::SymbianTEntryFlags; //Symbian doesn't have unix type file permissions entryFlags |= QFileSystemMetaData::Permissions; if(entry.IsReadOnly()) { @@ -171,6 +173,8 @@ void QFileSystemMetaData::fillFromTEntry(const TEntry& entry) void QFileSystemMetaData::fillFromVolumeInfo(const TVolumeInfo& info) { + entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); + knownFlagsMask |= QFileSystemMetaData::SymbianTEntryFlags; entryFlags |= QFileSystemMetaData::ExistsAttribute; entryFlags |= QFileSystemMetaData::Permissions; if(info.iDrive.iDriveAtt & KDriveAttRom) { @@ -187,7 +191,6 @@ bool QFileSystemEngine::fillMetaData(const QFileSystemEntry &entry, QFileSystemM if (what & QFileSystemMetaData::SymbianTEntryFlags) { RFs& fs(qt_s60GetRFs()); TInt err; - data.entryFlags &= ~(QFileSystemMetaData::SymbianTEntryFlags); QFileSystemEntry absentry(absoluteName(entry)); if (absentry.isRoot()) { //Root directories don't have an entry, and Entry() returns KErrBadName. @@ -210,7 +213,6 @@ bool QFileSystemEngine::fillMetaData(const QFileSystemEntry &entry, QFileSystemM data.size_ = 0; data.modificationTime_ = TTime(0); } - data.knownFlagsMask |= QFileSystemMetaData::SymbianTEntryFlags; } return data.hasFlags(what); } |