Skip to content

Commit

Permalink
better fix for thumbnails getting mixed up (static int instead of ran…
Browse files Browse the repository at this point in the history
…d), fixes #96
  • Loading branch information
jacob1 committed Jan 10, 2015
1 parent 65a31bb commit 1a50217
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 deletions.
6 changes: 4 additions & 2 deletions src/client/requestbroker/RequestBroker.cpp
Expand Up @@ -14,6 +14,8 @@

//Asynchronous Thumbnail render & request processing

unsigned int RequestListener::nextListenerID = 0;

RequestBroker::RequestBroker()
{
thumbnailQueueRunning = false;
Expand Down Expand Up @@ -265,7 +267,7 @@ bool RequestBroker::CheckRequestListener(ListenerHandle handle)

ListenerHandle RequestBroker::AttachRequestListener(RequestListener * tListener)
{
ListenerHandle handle = ListenerHandle(tListener->ListenerRand, tListener);
ListenerHandle handle = ListenerHandle(tListener->ListenerID, tListener);
pthread_mutex_lock(&listenersMutex);
validListeners.push_back(handle);
pthread_mutex_unlock(&listenersMutex);
Expand All @@ -282,7 +284,7 @@ void RequestBroker::DetachRequestListener(RequestListener * tListener)
std::vector<ListenerHandle>::iterator iter = validListeners.begin();
while (iter != validListeners.end())
{
if(*iter == ListenerHandle(tListener->ListenerRand, tListener))
if(*iter == ListenerHandle(tListener->ListenerID, tListener))
iter = validListeners.erase(iter);
else
++iter;
Expand Down
5 changes: 3 additions & 2 deletions src/client/requestbroker/RequestListener.h
Expand Up @@ -3,8 +3,9 @@
class RequestListener
{
public:
int ListenerRand;
RequestListener() { ListenerRand = rand(); }
static unsigned int nextListenerID;
int ListenerID;
RequestListener() { ListenerID = nextListenerID++; }
virtual ~RequestListener() {}

virtual void OnResponseReady(void * response, int identifier) {}
Expand Down

0 comments on commit 1a50217

Please sign in to comment.