summaryrefslogtreecommitdiffstats
path: root/src/corelib/io/qfilesystemengine_symbian.cpp
diff options
context:
space:
mode:
authorShane Kearns <shane.kearns@accenture.com>2010-09-13 15:34:27 +0100
committerShane Kearns <shane.kearns@accenture.com>2010-09-13 15:49:34 +0100
commit9bdc685da9d1e1aac165711197e3b7b887e19da3 (patch)
tree2e9214120cf3192dc90d45d32ff0bb607b60d7f2 /src/corelib/io/qfilesystemengine_symbian.cpp
parent7f5417353bd71a63e962851ba598f1e2631f4a25 (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.cpp6
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);
}