From 50b991323351d886d67df179d5a0998c5a44abd5 Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Mon, 2 Jan 2023 15:02:06 +0100 Subject: [PATCH] Fix size of directories if a subdir fails to open If opening the directory fails, it returns -1 as size. Don't add that to the parent's total size. (cherry picked from commit a6490755ca7d00c964a1349443ba9c06dbb33e50) --- src/kitemviews/private/kdirectorycontentscounterworker.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/kitemviews/private/kdirectorycontentscounterworker.cpp b/src/kitemviews/private/kdirectorycontentscounterworker.cpp index 9b86cd702..2cbb58730 100644 --- a/src/kitemviews/private/kdirectorycontentscounterworker.cpp +++ b/src/kitemviews/private/kdirectorycontentscounterworker.cpp @@ -71,7 +71,10 @@ KDirectoryContentsCounterWorker::CountResult walkDir(const QString &dirPath, } if (dirEntry->d_type == DT_DIR) { // recursion for dirs - size += walkDir(nameBuf, countHiddenFiles, countDirectoriesOnly, dirEntry, allowedRecursiveLevel - 1).size; + auto subdirResult = walkDir(nameBuf, countHiddenFiles, countDirectoriesOnly, dirEntry, allowedRecursiveLevel - 1); + if (subdirResult.size > 0) { + size += subdirResult.size; + } } } }