Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:acho-novell:branches:openSUSE:11.4:Update
bluedevil
bluedevil-filereceiver-fixed.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bluedevil-filereceiver-fixed.patch of Package bluedevil
diff --git a/src/daemon/helpers/filereceiver/service.cpp b/src/daemon/helpers/filereceiver/service.cpp index 2697574..97b8f32 100644 --- a/src/daemon/helpers/filereceiver/service.cpp +++ b/src/daemon/helpers/filereceiver/service.cpp @@ -21,6 +21,8 @@ #include "service.h" #include "serviceadaptor.h" +#include "filereceiversettings.h" +#include "openobex/serverftp.h" #include "openobex/serversession.h" #include <KDebug> @@ -37,6 +39,7 @@ Service::Service() dbus.registerService("org.kde.BlueDevil.Service"); dbus.registerObject("/Service", this); m_server = 0; + m_serverftp = 0; m_watcher = 0; } @@ -50,7 +53,7 @@ Service::~Service() void Service::launchServer() { - if (m_server) { + if (m_server && m_serverftp) { return; } @@ -60,8 +63,20 @@ void Service::launchServer() } if (BlueDevil::Manager::self()->defaultAdapter()) { - m_server = new OpenObex::Server(BlueDevil::Manager::self()->defaultAdapter()->address()); - kDebug() << m_server; + + FileReceiverSettings::self()->readConfig(); + if (FileReceiverSettings::enabled()) { + if (!m_server) { + kDebug() << "Launching Server"; + m_server = new OpenObex::Server(BlueDevil::Manager::self()->defaultAdapter()->address()); + } + } + if (FileReceiverSettings::shareEnabled()) { + if (!m_serverftp) { + kDebug() << "Launching FileSharing"; + m_serverftp = new OpenObex::ServerFtp(BlueDevil::Manager::self()->defaultAdapter()->address()); + } + } } else{ kDebug() << "No adapters found"; } @@ -70,13 +85,17 @@ void Service::launchServer() void Service::stopServer() { kDebug() << m_server; + kDebug() << m_serverftp; - if (!m_server) { + if (!m_server && !m_serverftp) { return; } - m_server->deleteLater(); + delete m_server; m_server = 0; + + delete m_serverftp; + m_serverftp = 0; } bool Service::isRunning() diff --git a/src/daemon/helpers/filereceiver/service.h b/src/daemon/helpers/filereceiver/service.h index 6f52d0c..536f03e 100644 --- a/src/daemon/helpers/filereceiver/service.h +++ b/src/daemon/helpers/filereceiver/service.h @@ -26,6 +26,8 @@ #include <QtDBus/QtDBus> #include "openobex/server.h" +#include "openobex/serverftp.h" + class QDBusServiceWatcher; class Service : public QObject @@ -45,7 +47,8 @@ private Q_SLOTS: void openobexUnregistered(); private: - OpenObex::Server* m_server; + OpenObex::Server *m_server; + OpenObex::ServerFtp *m_serverftp; QDBusServiceWatcher *m_watcher; };
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor