diff options
author | methodus <methodus@web.de> | 2012-09-19 02:18:06 +0200 |
---|---|---|
committer | methodus <methodus@web.de> | 2012-09-19 02:18:06 +0200 |
commit | 44b0ce921d619efe1b4f871603632014295e50af (patch) | |
tree | 489ce2a0ff222aea3af45c8a13fe61a7861af73c /server | |
parent | f2502b0723f10c87d515866b2135251583e588ad (diff) | |
download | vdr-plugin-upnp-44b0ce921d619efe1b4f871603632014295e50af.tar.gz vdr-plugin-upnp-44b0ce921d619efe1b4f871603632014295e50af.tar.bz2 |
Fixed check for device udn and continued work on browsing.
Diffstat (limited to 'server')
-rw-r--r-- | server/contentDirectory.cpp | 5 | ||||
-rw-r--r-- | server/server.cpp | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/server/contentDirectory.cpp b/server/contentDirectory.cpp index 4855715..b7d11ce 100644 --- a/server/contentDirectory.cpp +++ b/server/contentDirectory.cpp @@ -86,6 +86,7 @@ void cContentDirectory::Action(){ /* The container update IDs as CSV list */ UpnpAddToPropertySet(&PropertySet, "ContainerUpdateIDs", tools::IdListToCSV(mMediaServer->GetManager().GetContainerUpdateIDs()).c_str()); + int ret = UpnpNotifyExt(this->mDeviceHandle, this->mMediaServer->GetDeviceUUID().c_str(), this->mServiceDescription.serviceID.c_str(), PropertySet); ixmlDocument_free(PropertySet); @@ -193,7 +194,7 @@ int cContentDirectory::CreateObject(Upnp_Action_Request* request){ int cContentDirectory::Search(Upnp_Action_Request* request){ cMediaManager::SearchRequest searchRequest; - if(this->ParseIntegerValue(request->ActionRequest, "ContainerID", searchRequest.objectID)){ + if(this->ParseStringValue(request->ActionRequest, "ContainerID", searchRequest.objectID)){ esyslog("UPnP\tInvalid arguments. ObjectID missing or wrong"); this->SetError(request, UPNP_SOAP_E_INVALID_ARGS); return request->ErrCode; @@ -260,7 +261,7 @@ int cContentDirectory::Search(Upnp_Action_Request* request){ int cContentDirectory::Browse(Upnp_Action_Request* request){ cMediaManager::BrowseRequest browseRequest; - if(this->ParseIntegerValue(request->ActionRequest, "ObjectID", browseRequest.objectID)){ + if(this->ParseStringValue(request->ActionRequest, "ObjectID", browseRequest.objectID)){ esyslog("UPnP\tInvalid arguments. ObjectID missing or wrong"); this->SetError(request, UPNP_SOAP_E_INVALID_ARGS); return request->ErrCode; diff --git a/server/server.cpp b/server/server.cpp index 9858029..32c584d 100644 --- a/server/server.cpp +++ b/server/server.cpp @@ -314,7 +314,7 @@ const char* cMediaServer::RuntimeException::what() const throw() { } bool cMediaServer::CheckDeviceUUID(string deviceUUID) const { - return deviceUUID.compare(mCurrentConfiguration.deviceUUID) == 0; + return deviceUUID.find(mCurrentConfiguration.deviceUUID) != string::npos; } cMediaServer::Description::Description( |