From 048aaf0c4e77402adf584e3318e5aae6f1cdd749 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20P=C3=B6sel?= Date: Mon, 5 Nov 2012 21:11:48 +0000 Subject: XFire adoption (crashes on login, no 64bit) git-svn-id: http://svn.miranda-ng.org/main/trunk@2212 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- .../Xfire/xfiretest/Xfire_avatar_loader.cpp | 86 ---------------------- 1 file changed, 86 deletions(-) delete mode 100644 plugins/!NotAdopted/Xfire/xfiretest/Xfire_avatar_loader.cpp (limited to 'plugins/!NotAdopted/Xfire/xfiretest/Xfire_avatar_loader.cpp') diff --git a/plugins/!NotAdopted/Xfire/xfiretest/Xfire_avatar_loader.cpp b/plugins/!NotAdopted/Xfire/xfiretest/Xfire_avatar_loader.cpp deleted file mode 100644 index e1fe2fdd01..0000000000 --- a/plugins/!NotAdopted/Xfire/xfiretest/Xfire_avatar_loader.cpp +++ /dev/null @@ -1,86 +0,0 @@ -#include "stdafx.h" -#include "Xfire_avatar_loader.h" - -Xfire_avatar_loader::Xfire_avatar_loader(xfirelib::Client* client) { - threadrunning=FALSE; - this->client=client; - InitializeCriticalSection(&this->avatarMutex); -} - -Xfire_avatar_loader::~Xfire_avatar_loader() { - //liste leeren, damit der laufende thread abgebrochen wird - list.clear(); - //warten bis der thread geschlossen wurde - EnterCriticalSection(&this->avatarMutex); - LeaveCriticalSection(&this->avatarMutex); - //critical section entfernen - DeleteCriticalSection(&this->avatarMutex); -} - -void Xfire_avatar_loader::loadThread(LPVOID lparam) { - Xfire_avatar_loader* loader=(Xfire_avatar_loader*)lparam; - - //kein loader, dann abbruch - if(!lparam) - return; - - if(loader) { - EnterCriticalSection(&loader->avatarMutex); - loader->threadrunning=TRUE; - } - - while(1){ - //keinen avatarload auftrag mehr - if(!loader->list.size()) - break; - - //letzten load process holen - Xfire_avatar_process process=loader->list.back(); - - //buddyinfo abfragen - GetBuddyInfo buddyinfo; - buddyinfo.userid=process.userid; - if(loader->client) - if(loader->client->connected) - { - loader->client->send(&buddyinfo); - } - else //nicht mehr verbunden? dann liste leeren und schleife abbrechen - { - loader->list.clear(); - break; - } - - //auftrag entfernen - loader->list.pop_back(); - - Sleep(1000); - } - - if(loader) - { - loader->threadrunning=FALSE; - LeaveCriticalSection(&loader->avatarMutex); - } - - return; -} - -BOOL Xfire_avatar_loader::loadAvatar(HANDLE hcontact,char*username,unsigned int userid) { - Xfire_avatar_process process={0}; - - //struktur füllen - process.hcontact = hcontact; - if(username) - strcpy_s(process.username,128,username); - process.userid=userid; - - //Avataranfrage an die liste übergeben - this->list.push_back(process); - - if(!threadrunning && client!=NULL) { - mir_forkthread(Xfire_avatar_loader::loadThread,(LPVOID)this); - } - - return TRUE; -} \ No newline at end of file -- cgit v1.2.3