summaryrefslogtreecommitdiffstats
path: root/tdecore
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2016-01-27 23:12:46 +0100
committerSlávek Banko <slavek.banko@axis.cz>2016-01-27 23:12:59 +0100
commitfd96a6c2a8509afe19221213b3941a63d33a4ee4 (patch)
tree4137b68b1b8b8a3405e2d0c10b20407b71348d83 /tdecore
parent111cc009ea9a3699dcdda42503efc284e0d58098 (diff)
downloadtdelibs-fd96a6c2a8509afe19221213b3941a63d33a4ee4.tar.gz
tdelibs-fd96a6c2a8509afe19221213b3941a63d33a4ee4.zip
Fix crash in tdehwlib if not exists /sys/devices/system/cpu
This resolves Bug 2584 Signed-off-by: Slávek Banko <slavek.banko@axis.cz> (cherry picked from commit f4fb3a8e71882fec8beffccf0ba3c5eb54310c89)
Diffstat (limited to 'tdecore')
-rw-r--r--tdecore/tdehw/tdehardwaredevices.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/tdecore/tdehw/tdehardwaredevices.cpp b/tdecore/tdehw/tdehardwaredevices.cpp
index e0b594f49..26dc010f5 100644
--- a/tdecore/tdehw/tdehardwaredevices.cpp
+++ b/tdecore/tdehw/tdehardwaredevices.cpp
@@ -3543,21 +3543,23 @@ void TDEHardwareDevices::addCoreSystemDevices() {
TQDir d("/sys/devices/system/cpu/");
d.setFilter( TQDir::Dirs );
const TQFileInfoList *list = d.entryInfoList();
- TQFileInfoListIterator it( *list );
- TQFileInfo *fi;
- while ((fi = it.current()) != 0) {
- TQString directoryName = fi->fileName();
- if (directoryName.startsWith("cpu")) {
- directoryName = directoryName.remove(0,3);
- bool isInt;
- int processorNumber = directoryName.toUInt(&isInt, 10);
- if (isInt) {
- hwdevice = new TDECPUDevice(TDEGenericDeviceType::CPU);
- hwdevice->internalSetSystemPath(TQString("/sys/devices/system/cpu/cpu%1").arg(processorNumber));
- m_deviceList.append(hwdevice);
+ if (list) {
+ TQFileInfoListIterator it( *list );
+ TQFileInfo *fi;
+ while ((fi = it.current()) != 0) {
+ TQString directoryName = fi->fileName();
+ if (directoryName.startsWith("cpu")) {
+ directoryName = directoryName.remove(0,3);
+ bool isInt;
+ int processorNumber = directoryName.toUInt(&isInt, 10);
+ if (isInt) {
+ hwdevice = new TDECPUDevice(TDEGenericDeviceType::CPU);
+ hwdevice->internalSetSystemPath(TQString("/sys/devices/system/cpu/cpu%1").arg(processorNumber));
+ m_deviceList.append(hwdevice);
+ }
}
+ ++it;
}
- ++it;
}
// Populate CPU information