summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/server.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/server/server.cpp b/server/server.cpp
index af2295a..3780d7a 100644
--- a/server/server.cpp
+++ b/server/server.cpp
@@ -51,12 +51,26 @@ cMediaServer::cMediaServer()
}
cMediaServer::~cMediaServer(){
- delete mWebserver;
- delete mMediaManager;
+ UpnpFinish();
+
+ if(mWebserver){
+ mWebserver->Stop();
+
+ delete mWebserver;
+ mWebserver = NULL;
+ }
+
+ if(mMediaManager){
+ delete mMediaManager;
+ mMediaManager = NULL;
+ }
}
bool cMediaServer::Start(){
+ // If the plugin is not enabled, do not start it.
+ if(!mCurrentConfiguration.enabled) return true;
+
isyslog("UPnP\tStarting UPnP media server");
int ret;
@@ -141,19 +155,9 @@ bool cMediaServer::Stop(){
return false;
}
- UpnpFinish();
-
isyslog("UPnP\tStopping web server...");
if(mWebserver){
mWebserver->Stop();
-
- delete mWebserver;
- mWebserver = NULL;
- }
-
- if(mMediaManager){
- delete mMediaManager;
- mMediaManager = NULL;
}
return true;