summaryrefslogtreecommitdiff
path: root/core/launcher
Side-by-side diff
Diffstat (limited to 'core/launcher') (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/irserver.cpp4
-rw-r--r--core/launcher/irserver.h2
2 files changed, 5 insertions, 1 deletions
diff --git a/core/launcher/irserver.cpp b/core/launcher/irserver.cpp
index b22e064..2147d0a 100644
--- a/core/launcher/irserver.cpp
+++ b/core/launcher/irserver.cpp
@@ -15,4 +15,5 @@ IrServer::IrServer( QObject *parent, const char *name )
{
lib = 0;
+ iface = 0;
QString path = QPEApplication::qpeDir() + "/plugins/obex/";
QDir dir( path, "lib*.so" );
@@ -20,5 +21,4 @@ IrServer::IrServer( QObject *parent, const char *name )
QStringList::Iterator it;
for ( it = list.begin(); it != list.end(); ++it ) {
- ObexInterface *iface = 0;
QLibrary *trylib = new QLibrary( path + *it );
qDebug("trying lib %s", (path + (*it)).latin1() );
@@ -47,4 +47,6 @@ IrServer::IrServer( QObject *parent, const char *name )
IrServer::~IrServer()
{
+ if ( iface )
+ iface->release();
delete lib;
}
diff --git a/core/launcher/irserver.h b/core/launcher/irserver.h
index f9f682f..b3434dd 100644
--- a/core/launcher/irserver.h
+++ b/core/launcher/irserver.h
@@ -6,4 +6,5 @@
class QCopChannel;
class QLibrary;
+struct ObexInterface;
class IrServer : public QObject
@@ -16,4 +17,5 @@ public:
private:
QLibrary *lib;
+ ObexInterface *iface;
};