diff --git a/src/detection/battery/battery_linux.c b/src/detection/battery/battery_linux.c index 6fe799eb0..756dd9c8a 100644 --- a/src/detection/battery/battery_linux.c +++ b/src/detection/battery/battery_linux.c @@ -99,6 +99,9 @@ const char* ffDetectBatteryImpl(FFinstance* instance, FFlist* results) { struct dirent* entry; while((entry = readdir(dirp)) != NULL) { + if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + continue; + ffStrbufAppendS(&baseDir, entry->d_name); parseBattery(&baseDir, results); ffStrbufSubstrBefore(&baseDir, baseDirLength); diff --git a/src/detection/displayserver/linux/displayserver_linux.c b/src/detection/displayserver/linux/displayserver_linux.c index f2e0910b1..d64128a39 100644 --- a/src/detection/displayserver/linux/displayserver_linux.c +++ b/src/detection/displayserver/linux/displayserver_linux.c @@ -73,6 +73,9 @@ static void parseDRM(FFDisplayServerResult* result) struct dirent* entry; while((entry = readdir(dirp)) != NULL) { + if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + continue; + ffStrbufAppendS(&drmDir, entry->d_name); ffStrbufAppendS(&drmDir, "/modes"); diff --git a/src/detection/packages/packages_linux.c b/src/detection/packages/packages_linux.c index f4b363d54..cd5babf65 100644 --- a/src/detection/packages/packages_linux.c +++ b/src/detection/packages/packages_linux.c @@ -309,6 +309,8 @@ static void getPackageCountsBedrock(const FFinstance* instance, FFstrbuf* baseDi { if(entry->d_type != DT_DIR) continue; + if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + continue; ffStrbufAppendS(baseDir, entry->d_name); getPackageCounts(instance, baseDir, packageCounts);