Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | db/upnp: free IXML_Document *request manually | Max Kellermann | 2014-01-18 | 1 | -38/+40 |
| | |||||
* | db/upnp/Device: move code to method Parse() | Max Kellermann | 2014-01-18 | 4 | -31/+39 |
| | | | | Forward the Error to the caller. | ||||
* | db/upnp/Device: use ContentDirectoryDescriptor's move operator | Max Kellermann | 2014-01-18 | 3 | -7/+7 |
| | | | | Reduce bloat. | ||||
* | db/upnp/Discovery: don't copy XML to std::string | Max Kellermann | 2014-01-18 | 3 | -4/+4 |
| | | | | Pass "const char *" to Expat. | ||||
* | db/upnp/Discovery: fix memory leak | Max Kellermann | 2014-01-18 | 1 | -0/+1 |
| | |||||
* | db/upnp: remove unused typedef DevServIt | Max Kellermann | 2014-01-18 | 1 | -2/+0 |
| | |||||
* | db/upnp: use move operator to assign XML CDATA | Max Kellermann | 2014-01-18 | 2 | -12/+12 |
| | | | | Reduce runtime bloat. | ||||
* | db/upnp/Util: trimstring() constructs string from buffer | Max Kellermann | 2014-01-18 | 4 | -17/+15 |
| | | | | | Reduce overhead by omitting the part of the buffer that consists only of whitespace. | ||||
* | db/upnp/Discovery: free the response body | Max Kellermann | 2014-01-18 | 1 | -0/+1 |
| | | | | Memory leak. | ||||
* | db/upnp/Discovery: don't copy the response body | Max Kellermann | 2014-01-18 | 1 | -2/+1 |
| | | | | Bloat. | ||||
* | db/upnp: don't hold mutex while downloading device description | Max Kellermann | 2014-01-18 | 1 | -1/+1 |
| | | | | Must not perform blocking I/O while holding a mutex. | ||||
* | db/upnp: don't use WorkQueue for _ADVERTISEMENT_BYEBYE | Max Kellermann | 2014-01-18 | 2 | -36/+30 |
| | | | | Remove the ContentDirectoryDescriptor right away. Reduces bloat. | ||||
* | db/upnp/Discovery: move callbacks and data structures into class | Max Kellermann | 2014-01-17 | 3 | -72/+80 |
| | | | | Eliminate global variables. | ||||
* | db/upnp: split cluCallback() | Max Kellermann | 2014-01-17 | 1 | -15/+29 |
| | |||||
* | db/upnp: add local reference variables | Max Kellermann | 2014-01-17 | 1 | -11/+16 |
| | | | | Prepare to refactor some code. | ||||
* | db/upnp: move the LibUPnP instance to class UpnpDatabase | Max Kellermann | 2014-01-16 | 6 | -68/+32 |
| | | | | Delete the object when closing the database. | ||||
* | db/upnp: remove useless static Mutex | Max Kellermann | 2014-01-16 | 1 | -6/+0 |
| | |||||
* | db/upnp: move the UPnPDeviceDirectory instance to class UpnpDatabase | Max Kellermann | 2014-01-16 | 2 | -15/+2 |
| | | | | Delete the object when closing the database. | ||||
* | db/upnp/WorkQueue: use emplace() and std::move() | Max Kellermann | 2014-01-16 | 1 | -3/+4 |
| | |||||
* | db/upnp/WorkQueue: simplify start() | Max Kellermann | 2014-01-16 | 1 | -4/+5 |
| | |||||
* | db/upnp/WorkQueue: fix pthread_t[] allocation size | Max Kellermann | 2014-01-15 | 1 | -1/+1 |
| | | | | Was using the wrong variable. | ||||
* | db/upnp/Object: remove obsolete attribute "m_title" | Max Kellermann | 2014-01-15 | 1 | -1/+0 |
| | |||||
* | db/upnp/Object: add attribute "tag" | Max Kellermann | 2014-01-14 | 2 | -45/+23 |
| | | | | Replaces "m_title" and "m_props". More bloat removed. | ||||
* | db/upnp: move upnp_tags to Tags.cxx | Max Kellermann | 2014-01-14 | 2 | -0/+61 |
| | |||||
* | db/upnp/Object: disallow copying, always move | Max Kellermann | 2014-01-14 | 3 | -3/+7 |
| | | | | Reduce bloat. | ||||
* | db/upnp/Directory: merge m_containers and m_items | Max Kellermann | 2014-01-14 | 2 | -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 Kellermann | 2014-01-14 | 1 | -2/+2 |
| | |||||
* | db/upnp/Object: add attribute "name" | Max Kellermann | 2014-01-14 | 2 | -5/+28 |
| | | | | Call titleToPathElt() only once for each object. | ||||
* | db/upnp/WorkQueue: remove unused attributes "high", "low" | Max Kellermann | 2014-01-14 | 1 | -17/+3 |
| | |||||
* | db/upnp/WorkQueue: initialize "ok" to false, eliminate redundant checks | Max Kellermann | 2014-01-14 | 1 | -21/+10 |
| | |||||
* | db/upnp/WorkQueue: remove IsOK() check from put() | Max Kellermann | 2014-01-14 | 1 | -6/+0 |
| | | | | Not necessary, not worth the check. | ||||
* | db/upnp/WorkQueue: remove redundant n_workers_exited check from IsOK() | Max Kellermann | 2014-01-14 | 1 | -1/+1 |
| | |||||
* | db/upnp/WorkQueue: include cleanup | Max Kellermann | 2014-01-14 | 1 | -3/+0 |
| | |||||
* | db/upnp/WorkQueue: remove unnecessary "waiting" attributes | Max Kellermann | 2014-01-14 | 1 | -24/+9 |
| | |||||
* | db/upnp/WorkQueue: remove unused method waitIdle() | Max Kellermann | 2014-01-14 | 1 | -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::list | Max Kellermann | 2014-01-14 | 1 | -15/+19 |
| | | | | Reduce bloat further. | ||||
* | db/upnp/WorkQueue: use std::list instead of std::unordered_map | Max Kellermann | 2014-01-14 | 1 | -18/+6 |
| | | | | Reduce bloat. | ||||
* | db/upnp/WorkQueue: rename attributes | Max Kellermann | 2014-01-14 | 1 | -78/+78 |
| | |||||
* | db/upnp/WorkQueue: pass reference to take() | Max Kellermann | 2014-01-14 | 2 | -3/+3 |
| | |||||
* | db/upnp/WorkQueue: remove unused method qsize() | Max Kellermann | 2014-01-14 | 1 | -8/+0 |
| | |||||
* | db/upnp/WorkQueue: remove unused "szp" parameter from take() | Max Kellermann | 2014-01-14 | 2 | -5/+2 |
| | |||||
* | db/upnp/WorkQueue: remove unused statistics | Max Kellermann | 2014-01-14 | 1 | -17/+2 |
| | |||||
* | copyright year 2014 | Max Kellermann | 2014-01-13 | 2 | -2/+2 |
| | |||||
* | db/upnp: add fallback for emplace() | Max Kellermann | 2014-01-13 | 1 | -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 callback | Max Kellermann | 2014-01-13 | 3 | -31/+16 |
| | | | | Replaces the bloated std::map. | ||||
* | db/upnp: fix "upnp:class" parser | Max Kellermann | 2014-01-13 | 1 | -7/+7 |
| | | | | | "upnp:class" is an element, not an attribute of element "item". This fixes a regression from commit 65ebfb16 | ||||
* | db/upnp/Directory: parse item_class in StartElement | Max Kellermann | 2014-01-11 | 1 | -12/+8 |
| | | | | Don't add to the std::map. | ||||
* | db/upnp/Object: add attribute "url" | Max Kellermann | 2014-01-11 | 2 | -1/+3 |
| | | | | Don't store in the std::map. | ||||
* | db/upnp/Directory: parse duration | Max Kellermann | 2014-01-11 | 2 | -15/+20 |
| | | | | | | Don't put all <res/> attributes to the attributes map; parse the "duration" attribute as soon as we receive it, and store it in an integer attribute. This reduces bloat. | ||||
* | db/upnp: move stringToTokens() to Util.cxx | Max Kellermann | 2014-01-11 | 2 | -0/+43 |
| |