diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/organizercore.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/organizercore.cpp b/src/organizercore.cpp index 1f4e3434..884b699c 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -1087,8 +1087,9 @@ QString OrganizerCore::resolvePath(const QString &fileName) const QStringList OrganizerCore::listDirectories(const QString &directoryName) const
{
QStringList result;
- DirectoryEntry *dir = m_DirectoryStructure->findSubDirectoryRecursive(
- ToWString(directoryName));
+ DirectoryEntry *dir = m_DirectoryStructure;
+ if (!directoryName.isEmpty())
+ dir = dir->findSubDirectoryRecursive(ToWString(directoryName));
if (dir != nullptr) {
std::vector<DirectoryEntry *>::iterator current, end;
dir->getSubDirectories(current, end);
@@ -1104,8 +1105,9 @@ QStringList OrganizerCore::findFiles( const std::function<bool(const QString &)> &filter) const
{
QStringList result;
- DirectoryEntry *dir
- = m_DirectoryStructure->findSubDirectoryRecursive(ToWString(path));
+ DirectoryEntry *dir = m_DirectoryStructure;
+ if (!path.isEmpty())
+ dir = dir->findSubDirectoryRecursive(ToWString(path));
if (dir != nullptr) {
std::vector<FileEntry::Ptr> files = dir->getFiles();
foreach (FileEntry::Ptr file, files) {
@@ -1144,8 +1146,9 @@ QList<MOBase::IOrganizer::FileInfo> OrganizerCore::findFileInfos( const
{
QList<IOrganizer::FileInfo> result;
- DirectoryEntry *dir
- = m_DirectoryStructure->findSubDirectoryRecursive(ToWString(path));
+ DirectoryEntry *dir = m_DirectoryStructure;
+ if (!path.isEmpty())
+ dir = dir->findSubDirectoryRecursive(ToWString(path));
if (dir != nullptr) {
std::vector<FileEntry::Ptr> files = dir->getFiles();
foreach (FileEntry::Ptr file, files) {
|
