diff options
author | Max Kellermann <max@duempel.org> | 2014-01-18 14:24:38 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-01-18 14:24:38 +0100 |
commit | be0759d4651126c0695c7ff83e1f2a9feca7ec4e (patch) | |
tree | 14d37ebaa48631d3f29aca5a86b2e49db13e55a6 | |
parent | 339d939873f4dfcb11c9ab7737118f50218dfc96 (diff) | |
download | mpd-be0759d4651126c0695c7ff83e1f2a9feca7ec4e.tar.gz mpd-be0759d4651126c0695c7ff83e1f2a9feca7ec4e.tar.xz mpd-be0759d4651126c0695c7ff83e1f2a9feca7ec4e.zip |
db/upnp/Discovery: don't copy XML to std::string
Pass "const char *" to Expat.
-rw-r--r-- | src/db/upnp/Device.cxx | 4 | ||||
-rw-r--r-- | src/db/upnp/Device.hxx | 2 | ||||
-rw-r--r-- | src/db/upnp/Discovery.hxx | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/db/upnp/Device.cxx b/src/db/upnp/Device.cxx index 609f2cbfc..b5174236b 100644 --- a/src/db/upnp/Device.cxx +++ b/src/db/upnp/Device.cxx @@ -99,12 +99,12 @@ protected: } }; -UPnPDevice::UPnPDevice(const std::string &url, const std::string &description) +UPnPDevice::UPnPDevice(const std::string &url, const char *description) :ok(false) { UPnPDeviceParser mparser(*this); Error error; - if (!mparser.Parse(description.data(), description.length(), true, + if (!mparser.Parse(description, strlen(description), true, error)) { // TODO: pass Error to caller LogError(error); diff --git a/src/db/upnp/Device.hxx b/src/db/upnp/Device.hxx index 9cccc9bbc..78b9820f9 100644 --- a/src/db/upnp/Device.hxx +++ b/src/db/upnp/Device.hxx @@ -82,7 +82,7 @@ public: * @param url where the description came from * @param description the xml device description */ - UPnPDevice(const std::string &url, const std::string &description); + UPnPDevice(const std::string &url, const char *description); UPnPDevice() : ok(false) {} }; diff --git a/src/db/upnp/Discovery.hxx b/src/db/upnp/Discovery.hxx index 9e362c96f..0ac731329 100644 --- a/src/db/upnp/Discovery.hxx +++ b/src/db/upnp/Discovery.hxx @@ -66,7 +66,7 @@ class UPnPDeviceDirectory { class ContentDirectoryDescriptor { public: ContentDirectoryDescriptor(const std::string &url, - const std::string &description, + const char *description, time_t last, int exp) :device(url, description), last_seen(last), expires(exp+20) {} UPnPDevice device; |