db/upnp/WorkQueue: pass reference to take()

This commit is contained in:
Max Kellermann 2014-01-14 11:02:04 +01:00
parent e259474362
commit c13facdaca
2 changed files with 3 additions and 3 deletions

View File

@ -109,7 +109,7 @@ discoExplorer(void *)
{
for (;;) {
DiscoveredTask *tsk = 0;
if (!discoveredQueue.take(&tsk)) {
if (!discoveredQueue.take(tsk)) {
discoveredQueue.workerExit();
return (void*)1;
}

View File

@ -241,7 +241,7 @@ public:
* Sleeps if there are not enough. Signal if we go to sleep on empty
* queue: client may be waiting for our going idle.
*/
bool take(T* tp)
bool take(T &tp)
{
const ScopeLock protect(m_mutex);
@ -266,7 +266,7 @@ public:
m_workers_waiting--;
}
*tp = m_queue.front();
tp = m_queue.front();
m_queue.pop();
if (m_clients_waiting > 0) {
// No reason to wake up more than one client thread