aboutsummaryrefslogtreecommitdiffstats
path: root/src/db/upnp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* db/upnp: cache m_path.back()Max Kellermann2014-01-182-16/+18
|
* db/upnp: add UpnpMakeAction() helper functionMax Kellermann2014-01-182-30/+78
|
* db/upnp/ixmlwrap: getFirstElementValue() returns const char *Max Kellermann2014-01-185-27/+33
| | | | Eliminate the std::string bloat.
* db/upnp: merge duplicate nullptr checkMax Kellermann2014-01-181-2/+2
|
* db/upnp: free IXML_Document *request manuallyMax Kellermann2014-01-181-38/+40
|
* db/upnp/Device: move code to method Parse()Max Kellermann2014-01-184-31/+39
| | | | Forward the Error to the caller.
* db/upnp/Device: use ContentDirectoryDescriptor's move operatorMax Kellermann2014-01-183-7/+7
| | | | Reduce bloat.
* db/upnp/Discovery: don't copy XML to std::stringMax Kellermann2014-01-183-4/+4
| | | | Pass "const char *" to Expat.
* db/upnp/Discovery: fix memory leakMax Kellermann2014-01-181-0/+1
|
* db/upnp: remove unused typedef DevServItMax Kellermann2014-01-181-2/+0
|
* db/upnp: use move operator to assign XML CDATAMax Kellermann2014-01-182-12/+12
| | | | Reduce runtime bloat.
* db/upnp/Util: trimstring() constructs string from bufferMax Kellermann2014-01-184-17/+15
| | | | | Reduce overhead by omitting the part of the buffer that consists only of whitespace.
* db/upnp/Discovery: free the response bodyMax Kellermann2014-01-181-0/+1
| | | | Memory leak.
* db/upnp/Discovery: don't copy the response bodyMax Kellermann2014-01-181-2/+1
| | | | Bloat.
* db/upnp: don't hold mutex while downloading device descriptionMax Kellermann2014-01-181-1/+1
| | | | Must not perform blocking I/O while holding a mutex.
* db/upnp: don't use WorkQueue for _ADVERTISEMENT_BYEBYEMax Kellermann2014-01-182-36/+30
| | | | Remove the ContentDirectoryDescriptor right away. Reduces bloat.
* db/upnp/Discovery: move callbacks and data structures into classMax Kellermann2014-01-173-72/+80
| | | | Eliminate global variables.
* db/upnp: split cluCallback()Max Kellermann2014-01-171-15/+29
|
* db/upnp: add local reference variablesMax Kellermann2014-01-171-11/+16
| | | | Prepare to refactor some code.
* db/upnp: move the LibUPnP instance to class UpnpDatabaseMax Kellermann2014-01-166-68/+32
| | | | Delete the object when closing the database.
* db/upnp: remove useless static MutexMax Kellermann2014-01-161-6/+0
|
* db/upnp: move the UPnPDeviceDirectory instance to class UpnpDatabaseMax Kellermann2014-01-162-15/+2
| | | | Delete the object when closing the database.
* db/upnp/WorkQueue: use emplace() and std::move()Max Kellermann2014-01-161-3/+4
|
* db/upnp/WorkQueue: simplify start()Max Kellermann2014-01-161-4/+5
|
* db/upnp/WorkQueue: fix pthread_t[] allocation sizeMax Kellermann2014-01-151-1/+1
| | | | Was using the wrong variable.
* db/upnp/Object: remove obsolete attribute "m_title"Max Kellermann2014-01-151-1/+0
|
* db/upnp/Object: add attribute "tag"Max Kellermann2014-01-142-45/+23
| | | | Replaces "m_title" and "m_props". More bloat removed.
* db/upnp: move upnp_tags to Tags.cxxMax Kellermann2014-01-142-0/+61
|
* db/upnp/Object: disallow copying, always moveMax Kellermann2014-01-143-3/+7
| | | | Reduce bloat.
* db/upnp/Directory: merge m_containers and m_itemsMax Kellermann2014-01-142-11/+14
| | | | | There is no use in duplicating these containers. It only means that we have to search both, duplicating the code.
* db/upnp/Directory: eliminate one std::string copy with std::move()Max Kellermann2014-01-141-2/+2
|
* db/upnp/Object: add attribute "name"Max Kellermann2014-01-142-5/+28
| | | | Call titleToPathElt() only once for each object.
* db/upnp/WorkQueue: remove unused attributes "high", "low"Max Kellermann2014-01-141-17/+3
|
* db/upnp/WorkQueue: initialize "ok" to false, eliminate redundant checksMax Kellermann2014-01-141-21/+10
|
* db/upnp/WorkQueue: remove IsOK() check from put()Max Kellermann2014-01-141-6/+0
| | | | Not necessary, not worth the check.
* db/upnp/WorkQueue: remove redundant n_workers_exited check from IsOK()Max Kellermann2014-01-141-1/+1
|
* db/upnp/WorkQueue: include cleanupMax Kellermann2014-01-141-3/+0
|
* db/upnp/WorkQueue: remove unnecessary "waiting" attributesMax Kellermann2014-01-141-24/+9
|
* db/upnp/WorkQueue: remove unused method waitIdle()Max Kellermann2014-01-141-42/+0
| | | | | Contrary to setTerminateAndWait()'s documentation, the method does wait for worker threads to exit via pthread_join().
* db/upnp/WorkQueue: use array instead of std::listMax Kellermann2014-01-141-15/+19
| | | | Reduce bloat further.
* db/upnp/WorkQueue: use std::list instead of std::unordered_mapMax Kellermann2014-01-141-18/+6
| | | | Reduce bloat.
* db/upnp/WorkQueue: rename attributesMax Kellermann2014-01-141-78/+78
|
* db/upnp/WorkQueue: pass reference to take()Max Kellermann2014-01-142-3/+3
|
* db/upnp/WorkQueue: remove unused method qsize()Max Kellermann2014-01-141-8/+0
|
* db/upnp/WorkQueue: remove unused "szp" parameter from take()Max Kellermann2014-01-142-5/+2
|
* db/upnp/WorkQueue: remove unused statisticsMax Kellermann2014-01-141-17/+2
|
* copyright year 2014Max Kellermann2014-01-132-2/+2
|
* db/upnp: add fallback for emplace()Max Kellermann2014-01-131-0/+4
| | | | | The method emplace() was added in gcc 4.8. This commit restores compatibility with gcc 4.7.
* db/upnp: use std::function for the libupnp callbackMax Kellermann2014-01-133-31/+16
| | | | Replaces the bloated std::map.
* db/upnp: fix "upnp:class" parserMax Kellermann2014-01-131-7/+7
| | | | | "upnp:class" is an element, not an attribute of element "item". This fixes a regression from commit 65ebfb16