summaryrefslogtreecommitdiff
authoralwin <alwin>2004-02-24 02:47:03 (UTC)
committer alwin <alwin>2004-02-24 02:47:03 (UTC)
commitf196130d43642f2397ddadeed72e3ea062cda281 (patch) (side-by-side diff)
tree1916d2e66a8ea4fb149397b71888057c62156091
parent4baf741237a4c4575b3efe0bff6c4e143902b7ec (diff)
downloadopie-f196130d43642f2397ddadeed72e3ea062cda281.zip
opie-f196130d43642f2397ddadeed72e3ea062cda281.tar.gz
opie-f196130d43642f2397ddadeed72e3ea062cda281.tar.bz2
- check now for the storage media flag "check =" in DocumentListPrivate::appendDocpath
- fixed a possible segmentation fault in DocumentListPrivate::nextFile
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/documentlist.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/core/launcher/documentlist.cpp b/core/launcher/documentlist.cpp
index 39dc7c9..63f853e 100644
--- a/core/launcher/documentlist.cpp
+++ b/core/launcher/documentlist.cpp
@@ -440,8 +440,12 @@ void DocumentListPrivate::appendDocpath(FileSystem*fs)
return;
}
}
Config conf(f.filePath(), Config::File );
+ conf.setGroup("main");
+ if (!conf.readBoolEntry("check",false)) {
+ return;
+ }
conf.setGroup("subdirs");
bool read_all = conf.readBoolEntry("wholemedia",true);
if (read_all) {
docPaths+=fs->path();
@@ -559,8 +563,11 @@ const QString DocumentListPrivate::nextFile()
}
}
const QFileInfoList *fil = lists[searchDepth];
+ if (!fil) {
+ return QString::null;
+ }
QFileInfoList *fl = (QFileInfoList *)fil;
unsigned int pos = listPositions[searchDepth];
if ( pos >= fl->count() ) {