[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/solid
From: Kevin Ottens <ervin () kde ! org>
Date: 2007-07-17 6:58:46
Message-ID: 1184655526.514115.30123.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 688893 by ervin:
Fix a bug where the HAL backend was wrongly creating backend objects
even for invalid devices. It's definitely not the intended behavior.
CCMAIL: kde-dev@emailgoeshere.com
M +5 -1 solid/backends/hal/halmanager.cpp
M +9 -0 tests/halbasictest.cpp
M +1 -0 tests/halbasictest.h
--- trunk/KDE/kdelibs/solid/solid/backends/hal/halmanager.cpp #688892:688893
@@ -142,7 +142,11 @@
QObject *HalManager::createDevice(const QString &udi)
{
- return new HalDevice(udi);
+ if (deviceExists(udi)) {
+ return new HalDevice(udi);
+ } else {
+ return 0;
+ }
}
QStringList HalManager::findDeviceStringMatch(const QString &key, const QString &value)
--- trunk/KDE/kdelibs/solid/tests/halbasictest.cpp #688892:688893
@@ -22,6 +22,7 @@
#include <QtTest/QtTest>
#include "solid/backends/hal/halmanager.h"
+#include <solid/device.h>
#include <solid/ifaces/device.h>
#include <solid/ifaces/deviceinterface.h>
#include <solid/ifaces/processor.h>
@@ -72,6 +73,14 @@
delete manager;
}
+void HalBasicTest::testDeviceCreation()
+{
+ Solid::Device dev("/org/freedesktop/Hal/devices/computer");
+ QVERIFY(dev.isValid());
+ dev = Solid::Device("ddd/ff");
+ QVERIFY(!dev.isValid());
+}
+
void HalBasicTest::testSignalHandling()
{
HalManager *manager = new HalManager(0);
--- trunk/KDE/kdelibs/solid/tests/halbasictest.h #688892:688893
@@ -31,6 +31,7 @@
Q_OBJECT
private slots:
void testBasic();
+ void testDeviceCreation();
void testSignalHandling();
void slotPropertyChanged(const QMap<QString,int> &changes);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic