From 67f2d89c164c7adccdee065da1caac319d528b50 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 29 Jun 2012 16:37:08 +0000 Subject: - yet another crash fix on exit; - events speed-up - quick ICQ exit git-svn-id: http://svn.miranda-ng.org/main/trunk@687 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- bin10/lib/mir_core.lib | Bin 28166 -> 28382 bytes include/m_core.h | 2 + plugins/Mir_core/mir_core.def | 2 + plugins/Mir_core/mir_core_10.vcxproj | 15 ++ plugins/Mir_core/mir_core_10.vcxproj.filters | 3 + plugins/Mir_core/miranda.cpp | 319 +--------------------- plugins/Mir_core/miranda.h | 4 + plugins/Mir_core/modules.cpp | 146 +++++----- plugins/Mir_core/threads.cpp | 372 ++++++++++++++++++++++++++ protocols/IcqOscarJ/UI/askauthentication.cpp | 9 +- protocols/IcqOscarJ/UI/askauthentication.h | 9 +- protocols/IcqOscarJ/UI/loginpassword.cpp | 9 +- protocols/IcqOscarJ/UI/loginpassword.h | 9 +- protocols/IcqOscarJ/UI/userinfotab.cpp | 9 +- protocols/IcqOscarJ/UI/userinfotab.h | 8 +- protocols/IcqOscarJ/capabilities.cpp | 9 +- protocols/IcqOscarJ/capabilities.h | 9 +- protocols/IcqOscarJ/chan_01login.cpp | 9 +- protocols/IcqOscarJ/chan_02data.cpp | 9 +- protocols/IcqOscarJ/chan_03error.cpp | 9 +- protocols/IcqOscarJ/chan_04close.cpp | 13 +- protocols/IcqOscarJ/chan_05ping.cpp | 9 +- protocols/IcqOscarJ/changeinfo/changeinfo.h | 9 +- protocols/IcqOscarJ/changeinfo/constants.cpp | 9 +- protocols/IcqOscarJ/changeinfo/db.cpp | 9 +- protocols/IcqOscarJ/changeinfo/dlgproc.cpp | 9 +- protocols/IcqOscarJ/changeinfo/editlist.cpp | 9 +- protocols/IcqOscarJ/changeinfo/editstring.cpp | 9 +- protocols/IcqOscarJ/changeinfo/main.cpp | 9 +- protocols/IcqOscarJ/changeinfo/upload.cpp | 9 +- protocols/IcqOscarJ/channels.h | 9 +- protocols/IcqOscarJ/cookies.cpp | 9 +- protocols/IcqOscarJ/cookies.h | 9 +- protocols/IcqOscarJ/directpackets.cpp | 9 +- protocols/IcqOscarJ/directpackets.h | 9 +- protocols/IcqOscarJ/fam_01service.cpp | 9 +- protocols/IcqOscarJ/fam_02location.cpp | 9 +- protocols/IcqOscarJ/fam_03buddy.cpp | 9 +- protocols/IcqOscarJ/fam_04message.cpp | 9 +- protocols/IcqOscarJ/fam_09bos.cpp | 9 +- protocols/IcqOscarJ/fam_0alookup.cpp | 9 +- protocols/IcqOscarJ/fam_0bstatus.cpp | 9 +- protocols/IcqOscarJ/fam_13servclist.cpp | 9 +- protocols/IcqOscarJ/fam_15icqserver.cpp | 9 +- protocols/IcqOscarJ/fam_17signon.cpp | 9 +- protocols/IcqOscarJ/families.h | 9 +- protocols/IcqOscarJ/globals.h | 9 +- protocols/IcqOscarJ/guids.h | 9 +- protocols/IcqOscarJ/i18n.cpp | 9 +- protocols/IcqOscarJ/i18n.h | 9 +- protocols/IcqOscarJ/iconlib.cpp | 9 +- protocols/IcqOscarJ/iconlib.h | 9 +- protocols/IcqOscarJ/icq_advsearch.cpp | 9 +- protocols/IcqOscarJ/icq_advsearch.h | 9 +- protocols/IcqOscarJ/icq_avatar.cpp | 9 +- protocols/IcqOscarJ/icq_avatar.h | 9 +- protocols/IcqOscarJ/icq_clients.cpp | 9 +- protocols/IcqOscarJ/icq_constants.h | 9 +- protocols/IcqOscarJ/icq_db.cpp | 9 +- protocols/IcqOscarJ/icq_db.h | 9 +- protocols/IcqOscarJ/icq_direct.cpp | 9 +- protocols/IcqOscarJ/icq_direct.h | 9 +- protocols/IcqOscarJ/icq_directmsg.cpp | 9 +- protocols/IcqOscarJ/icq_fieldnames.cpp | 9 +- protocols/IcqOscarJ/icq_fieldnames.h | 9 +- protocols/IcqOscarJ/icq_filerequests.cpp | 9 +- protocols/IcqOscarJ/icq_filetransfer.cpp | 9 +- protocols/IcqOscarJ/icq_firstrun.cpp | 9 +- protocols/IcqOscarJ/icq_http.cpp | 9 +- protocols/IcqOscarJ/icq_http.h | 9 +- protocols/IcqOscarJ/icq_infoupdate.cpp | 14 +- protocols/IcqOscarJ/icq_infoupdate.h | 8 +- protocols/IcqOscarJ/icq_menu.cpp | 9 +- protocols/IcqOscarJ/icq_opts.cpp | 9 +- protocols/IcqOscarJ/icq_opts.h | 9 +- protocols/IcqOscarJ/icq_packet.cpp | 9 +- protocols/IcqOscarJ/icq_packet.h | 9 +- protocols/IcqOscarJ/icq_popups.cpp | 9 +- protocols/IcqOscarJ/icq_popups.h | 9 +- protocols/IcqOscarJ/icq_proto.cpp | 22 +- protocols/IcqOscarJ/icq_proto.h | 9 +- protocols/IcqOscarJ/icq_rates.cpp | 9 +- protocols/IcqOscarJ/icq_rates.h | 9 +- protocols/IcqOscarJ/icq_server.cpp | 13 +- protocols/IcqOscarJ/icq_server.h | 9 +- protocols/IcqOscarJ/icq_servlist.cpp | 9 +- protocols/IcqOscarJ/icq_servlist.h | 9 +- protocols/IcqOscarJ/icq_uploadui.cpp | 9 +- protocols/IcqOscarJ/icq_uploadui.h | 8 +- protocols/IcqOscarJ/icq_xstatus.cpp | 9 +- protocols/IcqOscarJ/icq_xtraz.cpp | 9 +- protocols/IcqOscarJ/icq_xtraz.h | 9 +- protocols/IcqOscarJ/icqosc_svcs.cpp | 9 +- protocols/IcqOscarJ/icqosc_svcs.h | 9 +- protocols/IcqOscarJ/icqoscar.cpp | 9 +- protocols/IcqOscarJ/icqoscar.h | 9 +- protocols/IcqOscarJ/init.cpp | 9 +- protocols/IcqOscarJ/init.h | 9 +- protocols/IcqOscarJ/log.cpp | 9 +- protocols/IcqOscarJ/log.h | 9 +- protocols/IcqOscarJ/oscar_filetransfer.cpp | 9 +- protocols/IcqOscarJ/oscar_filetransfer.h | 9 +- protocols/IcqOscarJ/stdpackets.cpp | 9 +- protocols/IcqOscarJ/stdpackets.h | 9 +- protocols/IcqOscarJ/tlv.cpp | 9 +- protocols/IcqOscarJ/tlv.h | 9 +- protocols/IcqOscarJ/utilities.cpp | 9 +- protocols/IcqOscarJ/utilities.h | 9 +- src/core/miranda.cpp | 4 +- 109 files changed, 589 insertions(+), 1192 deletions(-) create mode 100644 plugins/Mir_core/threads.cpp diff --git a/bin10/lib/mir_core.lib b/bin10/lib/mir_core.lib index 244a6176b9..a177c6a94a 100644 Binary files a/bin10/lib/mir_core.lib and b/bin10/lib/mir_core.lib differ diff --git a/include/m_core.h b/include/m_core.h index 14c72c0a37..a25c60e400 100644 --- a/include/m_core.h +++ b/include/m_core.h @@ -458,6 +458,8 @@ __inline HANDLE mir_forkthreadowner(pThreadFuncOwner aFunc, void* owner, void* a { return (HANDLE)forkthreadex(NULL, 0, (pThreadFuncEx)aFunc, owner, arg, pThreadID); } +MIR_CORE_DLL(void) Thread_SetName(DWORD dwThreadID, const char *szThreadName); + MIR_CORE_DLL(void) KillObjectThreads(void* pObject); /////////////////////////////////////////////////////////////////////////////// diff --git a/plugins/Mir_core/mir_core.def b/plugins/Mir_core/mir_core.def index 7d998c0d14..e0cefde13b 100644 --- a/plugins/Mir_core/mir_core.def +++ b/plugins/Mir_core/mir_core.def @@ -124,3 +124,5 @@ db_set_utf @120 db_set_w @121 db_set_ws @122 UnloadCoreModule @123 +Thread_SetName @124 + diff --git a/plugins/Mir_core/mir_core_10.vcxproj b/plugins/Mir_core/mir_core_10.vcxproj index 68b4adf4d8..6600013e1a 100644 --- a/plugins/Mir_core/mir_core_10.vcxproj +++ b/plugins/Mir_core/mir_core_10.vcxproj @@ -43,6 +43,7 @@ + @@ -124,6 +125,13 @@ $(IntDir)$(TargetName).lib + + + + + + copy /Y $(IntDir)$(TargetName).lib $(SolutionDir)\lib + @@ -185,6 +193,13 @@ $(IntDir)$(TargetName).lib + + + + + + copy /Y $(IntDir)$(TargetName).lib $(SolutionDir)\lib + diff --git a/plugins/Mir_core/mir_core_10.vcxproj.filters b/plugins/Mir_core/mir_core_10.vcxproj.filters index 1aca9fda03..27b6a42604 100644 --- a/plugins/Mir_core/mir_core_10.vcxproj.filters +++ b/plugins/Mir_core/mir_core_10.vcxproj.filters @@ -46,6 +46,9 @@ Source Files + + Source Files + diff --git a/plugins/Mir_core/miranda.cpp b/plugins/Mir_core/miranda.cpp index 910b204292..b059e11cb7 100644 --- a/plugins/Mir_core/miranda.cpp +++ b/plugins/Mir_core/miranda.cpp @@ -29,326 +29,10 @@ HWND hAPCWindow = NULL; int InitPathUtils(void); void (*RecalculateTime)(void); -HANDLE hStackMutex, hThreadQueueEmpty; int hLangpack = 0; HINSTANCE hInst = 0; -///////////////////////////////////////////////////////////////////////////////////////// -// exception handling - -static DWORD __cdecl sttDefaultFilter(DWORD, EXCEPTION_POINTERS*) -{ - return EXCEPTION_EXECUTE_HANDLER; -} - -pfnExceptionFilter pMirandaExceptFilter = sttDefaultFilter; - -MIR_CORE_DLL(pfnExceptionFilter) GetExceptionFilter() -{ - return pMirandaExceptFilter; -} - -MIR_CORE_DLL(pfnExceptionFilter) SetExceptionFilter(pfnExceptionFilter pMirandaExceptFilter) -{ - pfnExceptionFilter oldOne = pMirandaExceptFilter; - if (pMirandaExceptFilter != 0) - pMirandaExceptFilter = pMirandaExceptFilter; - return oldOne; -} - -///////////////////////////////////////////////////////////////////////////////////////// -// thread support functions - -struct THREAD_WAIT_ENTRY -{ - DWORD dwThreadId; // valid if hThread isn't signalled - HANDLE hThread; - HINSTANCE hOwner; - void* pObject; - //PVOID addr; -}; - -static LIST threads(10, NumericKeySortT); - -struct FORK_ARG { - HANDLE hEvent; - pThreadFunc threadcode; - pThreadFuncEx threadcodeex; - void *arg, *owner; -}; - -///////////////////////////////////////////////////////////////////////////////////////// -// forkthread - starts a new thread - -void __cdecl forkthread_r(void * arg) -{ - struct FORK_ARG * fa = (struct FORK_ARG *) arg; - void (*callercode)(void*)=fa->threadcode; - void * cookie=fa->arg; - Thread_Push(( HINSTANCE)callercode); - SetEvent(fa->hEvent); - __try - { - callercode(cookie); - } - __except(pMirandaExceptFilter(GetExceptionCode(), GetExceptionInformation())) - { - } - - SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); - Thread_Pop(); - return; -} - -MIR_CORE_DLL(UINT_PTR) forkthread( void (__cdecl *threadcode)(void*), unsigned long stacksize, void *arg) -{ - UINT_PTR rc; - struct FORK_ARG fa; - fa.hEvent=CreateEvent(NULL, FALSE, FALSE, NULL); - fa.threadcode=threadcode; - fa.arg=arg; - rc=_beginthread(forkthread_r, stacksize, &fa); - if ((UINT_PTR)-1L != rc) - WaitForSingleObject(fa.hEvent, INFINITE); - - CloseHandle(fa.hEvent); - return rc; -} - -///////////////////////////////////////////////////////////////////////////////////////// -// forkthreadex - starts a new thread with the extended info and returns the thread id - -unsigned __stdcall forkthreadex_r(void * arg) -{ - struct FORK_ARG *fa = (struct FORK_ARG *)arg; - pThreadFuncEx threadcode = fa->threadcodeex; - pThreadFuncOwner threadcodeex = (pThreadFuncOwner)fa->threadcodeex; - void *cookie = fa->arg; - void *owner = fa->owner; - unsigned long rc = 0; - - Thread_Push((HINSTANCE)threadcode, fa->owner); - SetEvent(fa->hEvent); - __try - { - if (owner) - rc = threadcodeex(owner, cookie); - else - rc = threadcode(cookie); - } - __except(pMirandaExceptFilter(GetExceptionCode(), GetExceptionInformation())) - { - } - - SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); - Thread_Pop(); - return rc; -} - -MIR_CORE_DLL(UINT_PTR) forkthreadex( - void *sec, - unsigned stacksize, - unsigned (__stdcall *threadcode)(void*), - void* owner, - void *arg, - unsigned *thraddr) -{ - UINT_PTR rc; - struct FORK_ARG fa = { 0 }; - fa.threadcodeex = threadcode; - fa.arg = arg; - fa.owner = owner; - fa.hEvent = CreateEvent(NULL, FALSE, FALSE, NULL); - rc = _beginthreadex(sec, stacksize, forkthreadex_r, (void *)&fa, 0, thraddr); - if (rc) - WaitForSingleObject(fa.hEvent, INFINITE); - - CloseHandle(fa.hEvent); - return rc; -} - -///////////////////////////////////////////////////////////////////////////////////////// -// APC and mutex functions - -static void __stdcall DummyAPCFunc(ULONG_PTR) -{ - /* called in the context of thread that cleared it's APC queue */ - return; -} - -static int MirandaWaitForMutex(HANDLE hEvent) -{ - for (;;) { - // will get WAIT_IO_COMPLETE for QueueUserAPC() which isnt a result - DWORD rc = MsgWaitForMultipleObjectsEx(1, &hEvent, INFINITE, QS_ALLINPUT, MWMO_ALERTABLE); - if (rc == WAIT_OBJECT_0 + 1) { - MSG msg; - while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { - if (IsDialogMessage(msg.hwnd, &msg)) continue; - TranslateMessage(&msg); - DispatchMessage(&msg); - } - } - else if (rc == WAIT_OBJECT_0) { // got object - return 1; - } - else if (rc == WAIT_ABANDONED_0 || rc == WAIT_FAILED) - return 0; - } -} - -///////////////////////////////////////////////////////////////////////////////////////// - -static void CALLBACK KillAllThreads(HWND, UINT, UINT_PTR, DWORD) -{ - if ( MirandaWaitForMutex(hStackMutex)) { - for (int j=0; j < threads.getCount(); j++) { - THREAD_WAIT_ENTRY* p = threads[j]; - char szModuleName[ MAX_PATH ]; - GetModuleFileNameA(p->hOwner, szModuleName, sizeof(szModuleName)); - TerminateThread(p->hThread, 9999); - CloseHandle(p->hThread); - mir_free(p); - } - - threads.destroy(); - - ReleaseMutex(hStackMutex); - SetEvent(hThreadQueueEmpty); - } -} - -MIR_CORE_DLL(void) KillObjectThreads(void* owner) -{ - if (owner == NULL) - return; - - WaitForSingleObject(hStackMutex, INFINITE); - - HANDLE* threadPool = (HANDLE*)alloca(threads.getCount()*sizeof(HANDLE)); - int threadCount = 0; - - for (int j = threads.getCount(); j--;) { - THREAD_WAIT_ENTRY* p = threads[j]; - if (p->pObject == owner) - threadPool[ threadCount++ ] = p->hThread; - } - ReleaseMutex(hStackMutex); - - // is there anything to kill? - if (threadCount > 0) { - if ( WaitForMultipleObjects(threadCount, threadPool, TRUE, 5000) == WAIT_TIMEOUT) { - // forcibly kill all remaining threads after 5 secs - WaitForSingleObject(hStackMutex, INFINITE); - for (int j = threads.getCount()-1; j >= 0; j--) { - THREAD_WAIT_ENTRY* p = threads[j]; - if (p->pObject == owner) { - TerminateThread(p->hThread, 9999); - CloseHandle(p->hThread); - threads.remove(j); - mir_free(p); - } - } - ReleaseMutex(hStackMutex); - } - } -} - -///////////////////////////////////////////////////////////////////////////////////////// - -MIR_CORE_DLL(void) Thread_Wait(void) -{ - // acquire the list and wake up any alertable threads - if ( MirandaWaitForMutex(hStackMutex)) { - int j; - for (j=0; j < threads.getCount(); j++) - QueueUserAPC(DummyAPCFunc, threads[j]->hThread, 0); - ReleaseMutex(hStackMutex); - } - - // give all unclosed threads 5 seconds to close - SetTimer(NULL, 0, 5000, KillAllThreads); - - // wait til the thread list is empty - MirandaWaitForMutex(hThreadQueueEmpty); -} - -///////////////////////////////////////////////////////////////////////////////////////// - -typedef LONG (WINAPI *pNtQIT)(HANDLE, LONG, PVOID, ULONG, PULONG); -#define ThreadQuerySetWin32StartAddress 9 - -static void* GetCurrentThreadEntryPoint() -{ - LONG ntStatus; - HANDLE hDupHandle, hCurrentProcess; - DWORD_PTR dwStartAddress; - - pNtQIT NtQueryInformationThread = (pNtQIT)GetProcAddress(GetModuleHandle(_T("ntdll.dll")), "NtQueryInformationThread" ); - if(NtQueryInformationThread == NULL) return 0; - - hCurrentProcess = GetCurrentProcess(); - if(!DuplicateHandle(hCurrentProcess, GetCurrentThread(), hCurrentProcess, &hDupHandle, THREAD_QUERY_INFORMATION, FALSE, 0)){ - SetLastError(ERROR_ACCESS_DENIED); - return NULL; - } - ntStatus = NtQueryInformationThread(hDupHandle, ThreadQuerySetWin32StartAddress, &dwStartAddress, sizeof(DWORD_PTR), NULL); - CloseHandle(hDupHandle); - - if(ntStatus != ERROR_SUCCESS) return 0; - return ( void* )dwStartAddress; -} - -MIR_CORE_DLL(INT_PTR) Thread_Push(HINSTANCE hInst, void* pOwner) -{ - ResetEvent(hThreadQueueEmpty); // thread list is not empty - if ( WaitForSingleObject(hStackMutex, INFINITE) == WAIT_OBJECT_0) { - THREAD_WAIT_ENTRY* p = (THREAD_WAIT_ENTRY*)mir_calloc(sizeof(THREAD_WAIT_ENTRY)); - - DuplicateHandle(GetCurrentProcess(), GetCurrentThread(), GetCurrentProcess(), &p->hThread, 0, FALSE, DUPLICATE_SAME_ACCESS); - p->dwThreadId = GetCurrentThreadId(); - p->pObject = pOwner; - if (pluginListAddr.getIndex(hInst) != -1) - p->hOwner = hInst; - else - p->hOwner = GetInstByAddress(( hInst != NULL ) ? (PVOID)hInst : GetCurrentThreadEntryPoint()); - - threads.insert(p); - - ReleaseMutex(hStackMutex); - } - return 0; -} - -///////////////////////////////////////////////////////////////////////////////////////// - -MIR_CORE_DLL(INT_PTR) Thread_Pop() -{ - if ( WaitForSingleObject(hStackMutex, INFINITE) == WAIT_OBJECT_0) { - DWORD dwThreadId = GetCurrentThreadId(); - for (int j=0; j < threads.getCount(); j++) { - THREAD_WAIT_ENTRY* p = threads[j]; - if (p->dwThreadId == dwThreadId) { - SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); - CloseHandle(p->hThread); - threads.remove(j); - mir_free(p); - - if ( !threads.getCount()) { - threads.destroy(); - ReleaseMutex(hStackMutex); - SetEvent(hThreadQueueEmpty); // thread list is empty now - return 0; - } - - ReleaseMutex(hStackMutex); - return 0; - } - } - ReleaseMutex(hStackMutex); - } - return 1; -} +HANDLE hStackMutex, hThreadQueueEmpty; ///////////////////////////////////////////////////////////////////////////////////////// // module init @@ -378,6 +62,7 @@ static void LoadCoreModule(void) hAPCWindow = CreateWindowEx(0, _T("STATIC"), NULL, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL); SetWindowLongPtr(hAPCWindow, GWLP_WNDPROC, (LONG_PTR)APCWndProc); hStackMutex = CreateMutex(NULL, FALSE, NULL); + hThreadQueueEmpty = CreateEvent(NULL, TRUE, TRUE, NULL); #ifdef WIN64 HMODULE mirInst = GetModuleHandleA("miranda64.exe"); diff --git a/plugins/Mir_core/miranda.h b/plugins/Mir_core/miranda.h index 65140260c1..71c0804fd1 100644 --- a/plugins/Mir_core/miranda.h +++ b/plugins/Mir_core/miranda.h @@ -43,6 +43,7 @@ int InitPathUtils(void); extern HINSTANCE hInst; extern HWND hAPCWindow; +extern HANDLE hStackMutex, hThreadQueueEmpty; /**** modules.cpp **********************************************************************/ @@ -68,6 +69,8 @@ struct THookSubscriber }; }; +#define HOOK_SECRET_SIGNATURE 0xDEADBABA + struct THook { char name[ MAXMODULELABELLENGTH ]; @@ -75,6 +78,7 @@ struct THook int subscriberCount; THookSubscriber* subscriber; MIRANDAHOOK pfnHook; + DWORD secretSignature; CRITICAL_SECTION csHook; }; diff --git a/plugins/Mir_core/modules.cpp b/plugins/Mir_core/modules.cpp index f451a70f60..bd8636ccb8 100644 --- a/plugins/Mir_core/modules.cpp +++ b/plugins/Mir_core/modules.cpp @@ -109,17 +109,18 @@ MIR_CORE_DLL(HANDLE) CreateHookableEvent(const char *name) return NULL; } - THook* ret = (THook*)mir_alloc(sizeof(THook)); - strncpy(ret->name, name, sizeof(ret->name)); ret->name[ MAXMODULELABELLENGTH-1 ] = 0; - ret->id = hookId++; - ret->subscriberCount = 0; - ret->subscriber = NULL; - ret->pfnHook = NULL; - InitializeCriticalSection(&ret->csHook); - hooks.insert(ret); + THook* newItem = (THook*)mir_alloc(sizeof(THook)); + strncpy(newItem->name, name, sizeof(newItem->name)); newItem->name[ MAXMODULELABELLENGTH-1 ] = 0; + newItem->id = hookId++; + newItem->subscriberCount = 0; + newItem->subscriber = NULL; + newItem->pfnHook = NULL; + newItem->secretSignature = HOOK_SECRET_SIGNATURE; + InitializeCriticalSection(&newItem->csHook); + hooks.insert(newItem); LeaveCriticalSection(&csHooks); - return (HANDLE)ret; + return (HANDLE)newItem; } MIR_CORE_DLL(int) DestroyHookableEvent(HANDLE hEvent) @@ -135,6 +136,7 @@ MIR_CORE_DLL(int) DestroyHookableEvent(HANDLE hEvent) } THook* p = hooks[idx]; + p->secretSignature = 0; if (p->subscriberCount) { mir_free(p->subscriber); p->subscriber = NULL; @@ -223,38 +225,44 @@ MIR_CORE_DLL(int) CallHookSubscribers(HANDLE hEvent, WPARAM wParam, LPARAM lPara return returnVal; } -static int checkHook(HANDLE hHook) +static bool checkHook(HANDLE hHook) { - if (hHook == NULL) - return -1; - - EnterCriticalSection(&csHooks); - if (pLastHook != hHook || !pLastHook) { - if (hooks.getIndex((THook*)hHook) == -1) { - LeaveCriticalSection(&csHooks); - return -1; - } - pLastHook = (THook*)hHook; + THook* p = (THook*)hHook; + if (p == NULL) + return false; + + bool ret; + __try + { + if (p->secretSignature != HOOK_SECRET_SIGNATURE) + ret = false; + else if (p->subscriberCount == 0) + ret = false; + else + ret = true; } - LeaveCriticalSection(&csHooks); - return 0; + __except(EXCEPTION_EXECUTE_HANDLER) + { + ret = false; + } + + return ret; } static void CALLBACK HookToMainAPCFunc(ULONG_PTR dwParam) { THookToMainThreadItem* item = (THookToMainThreadItem*)dwParam; - - if (checkHook(item->hook) == -1) - item->result = -1; - else - item->result = CallHookSubscribers(item->hook, item->wParam, item->lParam); + item->result = CallHookSubscribers(item->hook, item->wParam, item->lParam); SetEvent(item->hDoneEvent); } MIR_CORE_DLL(int) NotifyEventHooks(HANDLE hEvent, WPARAM wParam, LPARAM lParam) { + if ( !checkHook(hEvent)) + return -1; + if ( GetCurrentThreadId() == mainThreadId) - return (checkHook(hEvent) == -1) ? -1 : CallHookSubscribers(hEvent, wParam, lParam); + return CallHookSubscribers(hEvent, wParam, lParam); mir_ptr item; item->hDoneEvent = CreateEvent(NULL, FALSE, FALSE, NULL); @@ -267,11 +275,8 @@ MIR_CORE_DLL(int) NotifyEventHooks(HANDLE hEvent, WPARAM wParam, LPARAM lParam) static HANDLE HookEventInt(int type, const char* name, MIRANDAHOOK hookProc, void* object, LPARAM lParam) { - int idx; - THook* p; - HANDLE ret; - EnterCriticalSection(&csHooks); + int idx; if ((idx = hooks.getIndex((THook*)name)) == -1) { #ifdef _DEBUG OutputDebugStringA("Attempt to hook: \t"); @@ -282,7 +287,7 @@ static HANDLE HookEventInt(int type, const char* name, MIRANDAHOOK hookProc, voi return NULL; } - p = hooks[ idx ]; + THook* p = hooks[ idx ]; p->subscriber = (THookSubscriber*)mir_realloc(p->subscriber, sizeof(THookSubscriber)*(p->subscriberCount+1)); p->subscriber[ p->subscriberCount ].type = type; p->subscriber[ p->subscriberCount ].pfnHook = hookProc; @@ -291,7 +296,7 @@ static HANDLE HookEventInt(int type, const char* name, MIRANDAHOOK hookProc, voi p->subscriber[ p->subscriberCount ].hOwner = GetInstByAddress(hookProc); p->subscriberCount++; - ret = (HANDLE)((p->id << 16) | p->subscriberCount); + HANDLE ret = (HANDLE)((p->id << 16) | p->subscriberCount); LeaveCriticalSection(&csHooks); return ret; } @@ -318,11 +323,9 @@ MIR_CORE_DLL(HANDLE) HookEventObjParam(const char* name, MIRANDAHOOKOBJPARAM hoo MIR_CORE_DLL(HANDLE) HookEventMessage(const char* name, HWND hwnd, UINT message) { - int idx; - THook* p; - HANDLE ret; - EnterCriticalSection(&csHooks); + + int idx; if ((idx = hooks.getIndex((THook*)name)) == -1) { #ifdef _DEBUG MessageBoxA(NULL, "Attempt to hook non-existant event", name, MB_OK); @@ -331,34 +334,34 @@ MIR_CORE_DLL(HANDLE) HookEventMessage(const char* name, HWND hwnd, UINT message) return NULL; } - p = hooks[ idx ]; + THook* p = hooks[ idx ]; p->subscriber = (THookSubscriber*)mir_realloc(p->subscriber, sizeof(THookSubscriber)*(p->subscriberCount+1)); p->subscriber[ p->subscriberCount ].type = 5; p->subscriber[ p->subscriberCount ].hwnd = hwnd; p->subscriber[ p->subscriberCount ].message = message; p->subscriberCount++; - ret = (HANDLE)((p->id << 16) | p->subscriberCount); + HANDLE ret = (HANDLE)((p->id << 16) | p->subscriberCount); LeaveCriticalSection(&csHooks); return ret; } MIR_CORE_DLL(int) UnhookEvent(HANDLE hHook) { - int i; - THook* p = NULL; + if (hHook == NULL) + return 0; int hookId = (int)hHook >> 16; int subscriberId = ((int)hHook & 0xFFFF) - 1; - if (hHook == NULL) return 0; - EnterCriticalSection(&csHooks); - for (i = 0; i < hooks.getCount(); i++) { + + THook* p = NULL; + for (int i = 0; i < hooks.getCount(); i++) if (hooks[i]->id == hookId) { p = hooks[i]; break; - } } + } if (p == NULL) { LeaveCriticalSection(&csHooks); @@ -385,35 +388,36 @@ MIR_CORE_DLL(int) UnhookEvent(HANDLE hHook) MIR_CORE_DLL(void) KillModuleEventHooks(HINSTANCE hInst) { - int i, j; - EnterCriticalSection(&csHooks); - for (i = hooks.getCount()-1; i >= 0; i--) { + + for (int i = hooks.getCount()-1; i >= 0; i--) { if (hooks[i]->subscriberCount == 0) continue; - for (j = hooks[i]->subscriberCount-1; j >= 0; j--) { - if (hooks[i]->subscriber[j].hOwner == hInst) { - char szModuleName[ MAX_PATH ]; - GetModuleFileNameA(hooks[i]->subscriber[j].hOwner, szModuleName, sizeof(szModuleName)); - UnhookEvent((HANDLE)((hooks[i]->id << 16) + j + 1)); - if (hooks[i]->subscriberCount == 0) - break; - } } } + for (int j = hooks[i]->subscriberCount-1; j >= 0; j--) { + if (hooks[i]->subscriber[j].hOwner != hInst) + continue; + + char szModuleName[ MAX_PATH ]; + GetModuleFileNameA(hooks[i]->subscriber[j].hOwner, szModuleName, sizeof(szModuleName)); + UnhookEvent((HANDLE)((hooks[i]->id << 16) + j + 1)); + if (hooks[i]->subscriberCount == 0) + break; + } + } LeaveCriticalSection(&csHooks); } MIR_CORE_DLL(void) KillObjectEventHooks(void* pObject) { - int i, j; - EnterCriticalSection(&csHooks); - for (i = hooks.getCount()-1; i >= 0; i--) { + + for (int i = hooks.getCount()-1; i >= 0; i--) { if (hooks[i]->subscriberCount == 0) continue; - for (j = hooks[i]->subscriberCount-1; j >= 0; j--) { + for (int j = hooks[i]->subscriberCount-1; j >= 0; j--) { if (hooks[i]->subscriber[j].object == pObject) { UnhookEvent((HANDLE)((hooks[i]->id << 16) + j + 1)); if (hooks[i]->subscriberCount == 0) @@ -551,12 +555,14 @@ static void CALLBACK CallServiceToMainAPCFunc(ULONG_PTR dwParam) MIR_CORE_DLL(INT_PTR) CallServiceSync(const char *name, WPARAM wParam, LPARAM lParam) { - if (name == NULL) return CALLSERVICE_NOTFOUND; + if (name == NULL) + return CALLSERVICE_NOTFOUND; + // the service is looked up within the main thread, since the time it takes // for the APC queue to clear the service being called maybe removed. // even thou it may exists before the call, the critsec can't be locked between calls. if (GetCurrentThreadId() == mainThreadId) - return CallService(name, wParam, lParam); + return CallService(name, wParam, lParam); mir_ptr item; item->wParam = wParam; @@ -576,12 +582,14 @@ MIR_CORE_DLL(int) CallFunctionAsync(void (__stdcall *func)(void *), void *arg) MIR_CORE_DLL(void) KillModuleServices(HINSTANCE hInst) { EnterCriticalSection(&csServices); + for (int i = services.getCount()-1; i >= 0; i--) { if (services[i]->hOwner == hInst) { char szModuleName[ MAX_PATH ]; GetModuleFileNameA(services[i]->hOwner, szModuleName, sizeof(szModuleName)); DestroyServiceFunction((HANDLE)services[i]->nameHash); - } } + } + } LeaveCriticalSection(&csServices); } @@ -589,6 +597,7 @@ MIR_CORE_DLL(void) KillModuleServices(HINSTANCE hInst) MIR_CORE_DLL(void) KillObjectServices(void* pObject) { EnterCriticalSection(&csServices); + for (int i = services.getCount()-1; i >= 0; i--) if (services[i]->object == pObject) DestroyServiceFunction((HANDLE)services[i]->nameHash); @@ -613,23 +622,26 @@ int InitialiseModularEngine(void) void DestroyModularEngine(void) { EnterCriticalSection(&csHooks); + for (int i=0; i < hooks.getCount(); i++) { THook* p = hooks[i]; - if (p->subscriberCount) + if (p->subscriberCount) mir_free(p->subscriber); DeleteCriticalSection(&p->csHook); mir_free(p); } hooks.destroy(); + LeaveCriticalSection(&csHooks); DeleteCriticalSection(&csHooks); EnterCriticalSection(&csServices); + for (int j=0; j < services.getCount(); j++) mir_free(services[j]); - services.destroy(); + LeaveCriticalSection(&csServices); - DeleteCriticalSection(&csServices); + DeleteCriticalSection(&csServices); CloseHandle(hMainThread); } diff --git a/plugins/Mir_core/threads.cpp b/plugins/Mir_core/threads.cpp new file mode 100644 index 0000000000..68fb526f5d --- /dev/null +++ b/plugins/Mir_core/threads.cpp @@ -0,0 +1,372 @@ +/* + +Miranda IM: the free IM client for Microsoft* Windows* + +Copyright 2000-2012 Miranda ICQ/IM project, +all portions of this codebase are copyrighted to the people +listed in contributors.txt. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +*/ + +#include "commonheaders.h" + +///////////////////////////////////////////////////////////////////////////////////////// +// APC and mutex functions + +static void __stdcall DummyAPCFunc(ULONG_PTR) +{ + /* called in the context of thread that cleared it's APC queue */ + return; +} + +static int MirandaWaitForMutex(HANDLE hEvent) +{ + for (;;) { + // will get WAIT_IO_COMPLETE for QueueUserAPC() which isnt a result + DWORD rc = MsgWaitForMultipleObjectsEx(1, &hEvent, INFINITE, QS_ALLINPUT, MWMO_ALERTABLE); + if (rc == WAIT_OBJECT_0 + 1) { + MSG msg; + while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { + if (IsDialogMessage(msg.hwnd, &msg)) continue; + TranslateMessage(&msg); + DispatchMessage(&msg); + } + } + else if (rc == WAIT_OBJECT_0) { // got object + return 1; + } + else if (rc == WAIT_ABANDONED_0 || rc == WAIT_FAILED) + return 0; + } +} + +///////////////////////////////////////////////////////////////////////////////////////// +// exception handling + +static DWORD __cdecl sttDefaultFilter(DWORD, EXCEPTION_POINTERS*) +{ + return EXCEPTION_EXECUTE_HANDLER; +} + +pfnExceptionFilter pMirandaExceptFilter = sttDefaultFilter; + +MIR_CORE_DLL(pfnExceptionFilter) GetExceptionFilter() +{ + return pMirandaExceptFilter; +} + +MIR_CORE_DLL(pfnExceptionFilter) SetExceptionFilter(pfnExceptionFilter pMirandaExceptFilter) +{ + pfnExceptionFilter oldOne = pMirandaExceptFilter; + if (pMirandaExceptFilter != 0) + pMirandaExceptFilter = pMirandaExceptFilter; + return oldOne; +} + +///////////////////////////////////////////////////////////////////////////////////////// +// thread support functions + +struct THREAD_WAIT_ENTRY +{ + DWORD dwThreadId; // valid if hThread isn't signalled + HANDLE hThread; + HINSTANCE hOwner; + void* pObject; + //PVOID addr; +}; + +static LIST threads(10, NumericKeySortT); + +struct FORK_ARG { + HANDLE hEvent; + pThreadFunc threadcode; + pThreadFuncEx threadcodeex; + void *arg, *owner; +}; + +///////////////////////////////////////////////////////////////////////////////////////// +// forkthread - starts a new thread + +void __cdecl forkthread_r(void * arg) +{ + struct FORK_ARG * fa = (struct FORK_ARG *) arg; + void (*callercode)(void*)=fa->threadcode; + void * cookie=fa->arg; + Thread_Push(( HINSTANCE)callercode); + SetEvent(fa->hEvent); + __try + { + callercode(cookie); + } + __except(pMirandaExceptFilter(GetExceptionCode(), GetExceptionInformation())) + { + } + + SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); + Thread_Pop(); + return; +} + +MIR_CORE_DLL(UINT_PTR) forkthread( void (__cdecl *threadcode)(void*), unsigned long stacksize, void *arg) +{ + UINT_PTR rc; + struct FORK_ARG fa; + fa.hEvent=CreateEvent(NULL, FALSE, FALSE, NULL); + fa.threadcode=threadcode; + fa.arg=arg; + rc=_beginthread(forkthread_r, stacksize, &fa); + if ((UINT_PTR)-1L != rc) + WaitForSingleObject(fa.hEvent, INFINITE); + + CloseHandle(fa.hEvent); + return rc; +} + +///////////////////////////////////////////////////////////////////////////////////////// +// forkthreadex - starts a new thread with the extended info and returns the thread id + +unsigned __stdcall forkthreadex_r(void * arg) +{ + struct FORK_ARG *fa = (struct FORK_ARG *)arg; + pThreadFuncEx threadcode = fa->threadcodeex; + pThreadFuncOwner threadcodeex = (pThreadFuncOwner)fa->threadcodeex; + void *cookie = fa->arg; + void *owner = fa->owner; + unsigned long rc = 0; + + Thread_Push((HINSTANCE)threadcode, fa->owner); + SetEvent(fa->hEvent); + __try + { + if (owner) + rc = threadcodeex(owner, cookie); + else + rc = threadcode(cookie); + } + __except(pMirandaExceptFilter(GetExceptionCode(), GetExceptionInformation())) + { + } + + SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); + Thread_Pop(); + return rc; +} + +MIR_CORE_DLL(UINT_PTR) forkthreadex( + void *sec, + unsigned stacksize, + unsigned (__stdcall *threadcode)(void*), + void* owner, + void *arg, + unsigned *thraddr) +{ + UINT_PTR rc; + struct FORK_ARG fa = { 0 }; + fa.threadcodeex = threadcode; + fa.arg = arg; + fa.owner = owner; + fa.hEvent = CreateEvent(NULL, FALSE, FALSE, NULL); + rc = _beginthreadex(sec, stacksize, forkthreadex_r, (void *)&fa, 0, thraddr); + if (rc) + WaitForSingleObject(fa.hEvent, INFINITE); + + CloseHandle(fa.hEvent); + return rc; +} + +///////////////////////////////////////////////////////////////////////////////////////// + +MIR_CORE_DLL(void) KillObjectThreads(void* owner) +{ + if (owner == NULL) + return; + + WaitForSingleObject(hStackMutex, INFINITE); + + HANDLE* threadPool = (HANDLE*)alloca(threads.getCount()*sizeof(HANDLE)); + int threadCount = 0; + + for (int j = threads.getCount(); j--;) { + THREAD_WAIT_ENTRY* p = threads[j]; + if (p->pObject == owner) + threadPool[ threadCount++ ] = p->hThread; + } + ReleaseMutex(hStackMutex); + + // is there anything to kill? + if (threadCount > 0) { + if ( WaitForMultipleObjects(threadCount, threadPool, TRUE, 5000) == WAIT_TIMEOUT) { + // forcibly kill all remaining threads after 5 secs + WaitForSingleObject(hStackMutex, INFINITE); + for (int j = threads.getCount()-1; j >= 0; j--) { + THREAD_WAIT_ENTRY* p = threads[j]; + if (p->pObject == owner) { + TerminateThread(p->hThread, 9999); + CloseHandle(p->hThread); + threads.remove(j); + mir_free(p); + } + } + ReleaseMutex(hStackMutex); + } + } +} + +///////////////////////////////////////////////////////////////////////////////////////// + +static void CALLBACK KillAllThreads(HWND, UINT, UINT_PTR, DWORD) +{ + if ( MirandaWaitForMutex(hStackMutex)) { + for (int j=0; j < threads.getCount(); j++) { + THREAD_WAIT_ENTRY* p = threads[j]; + char szModuleName[ MAX_PATH ]; + GetModuleFileNameA(p->hOwner, szModuleName, sizeof(szModuleName)); + TerminateThread(p->hThread, 9999); + CloseHandle(p->hThread); + mir_free(p); + } + + threads.destroy(); + + ReleaseMutex(hStackMutex); + SetEvent(hThreadQueueEmpty); + } +} + +MIR_CORE_DLL(void) Thread_Wait(void) +{ + // acquire the list and wake up any alertable threads + if ( MirandaWaitForMutex(hStackMutex)) { + for (int j=0; j < threads.getCount(); j++) + QueueUserAPC(DummyAPCFunc, threads[j]->hThread, 0); + ReleaseMutex(hStackMutex); + } + + // give all unclosed threads 5 seconds to close + SetTimer(NULL, 0, 5000, KillAllThreads); + + // wait til the thread list is empty + MirandaWaitForMutex(hThreadQueueEmpty); +} + +///////////////////////////////////////////////////////////////////////////////////////// + +typedef LONG (WINAPI *pNtQIT)(HANDLE, LONG, PVOID, ULONG, PULONG); +#define ThreadQuerySetWin32StartAddress 9 + +static void* GetCurrentThreadEntryPoint() +{ + LONG ntStatus; + HANDLE hDupHandle, hCurrentProcess; + DWORD_PTR dwStartAddress; + + pNtQIT NtQueryInformationThread = (pNtQIT)GetProcAddress(GetModuleHandle(_T("ntdll.dll")), "NtQueryInformationThread" ); + if(NtQueryInformationThread == NULL) return 0; + + hCurrentProcess = GetCurrentProcess(); + if(!DuplicateHandle(hCurrentProcess, GetCurrentThread(), hCurrentProcess, &hDupHandle, THREAD_QUERY_INFORMATION, FALSE, 0)){ + SetLastError(ERROR_ACCESS_DENIED); + return NULL; + } + ntStatus = NtQueryInformationThread(hDupHandle, ThreadQuerySetWin32StartAddress, &dwStartAddress, sizeof(DWORD_PTR), NULL); + CloseHandle(hDupHandle); + + if(ntStatus != ERROR_SUCCESS) return 0; + return ( void* )dwStartAddress; +} + +MIR_CORE_DLL(INT_PTR) Thread_Push(HINSTANCE hInst, void* pOwner) +{ + ResetEvent(hThreadQueueEmpty); // thread list is not empty + if ( WaitForSingleObject(hStackMutex, INFINITE) == WAIT_OBJECT_0) { + THREAD_WAIT_ENTRY* p = (THREAD_WAIT_ENTRY*)mir_calloc(sizeof(THREAD_WAIT_ENTRY)); + + DuplicateHandle(GetCurrentProcess(), GetCurrentThread(), GetCurrentProcess(), &p->hThread, 0, FALSE, DUPLICATE_SAME_ACCESS); + p->dwThreadId = GetCurrentThreadId(); + p->pObject = pOwner; + if (pluginListAddr.getIndex(hInst) != -1) + p->hOwner = hInst; + else + p->hOwner = GetInstByAddress(( hInst != NULL ) ? (PVOID)hInst : GetCurrentThreadEntryPoint()); + + threads.insert(p); + + ReleaseMutex(hStackMutex); + } + return 0; +} + +///////////////////////////////////////////////////////////////////////////////////////// + +MIR_CORE_DLL(INT_PTR) Thread_Pop() +{ + if ( WaitForSingleObject(hStackMutex, INFINITE) == WAIT_OBJECT_0) { + DWORD dwThreadId = GetCurrentThreadId(); + for (int j=0; j < threads.getCount(); j++) { + THREAD_WAIT_ENTRY* p = threads[j]; + if (p->dwThreadId == dwThreadId) { + SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); + CloseHandle(p->hThread); + threads.remove(j); + mir_free(p); + + if ( !threads.getCount()) { + threads.destroy(); + ReleaseMutex(hStackMutex); + SetEvent(hThreadQueueEmpty); // thread list is empty now + return 0; + } + + ReleaseMutex(hStackMutex); + return 0; + } + } + ReleaseMutex(hStackMutex); + } + return 1; +} + +///////////////////////////////////////////////////////////////////////////////////////// + +const DWORD MS_VC_EXCEPTION=0x406D1388; + +#pragma pack(push,8) +typedef struct tagTHREADNAME_INFO +{ + DWORD dwType; // Must be 0x1000. + LPCSTR szName; // Pointer to name (in user addr space). + DWORD dwThreadID; // Thread ID (-1=caller thread). + DWORD dwFlags; // Reserved for future use, must be zero. +} THREADNAME_INFO; +#pragma pack(pop) + +MIR_CORE_DLL(void) Thread_SetName(DWORD dwThreadID, const char *szThreadName) +{ + THREADNAME_INFO info; + info.dwType = 0x1000; + info.szName = szThreadName; + info.dwThreadID = dwThreadID; + info.dwFlags = 0; + + __try + { + RaiseException( MS_VC_EXCEPTION, 0, sizeof(info)/sizeof(ULONG_PTR), (ULONG_PTR*)&info ); + } + __except(EXCEPTION_EXECUTE_HANDLER) + { + } +} diff --git a/protocols/IcqOscarJ/UI/askauthentication.cpp b/protocols/IcqOscarJ/UI/askauthentication.cpp index 7f541814fb..818d5ce6de 100644 --- a/protocols/IcqOscarJ/UI/askauthentication.cpp +++ b/protocols/IcqOscarJ/UI/askauthentication.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/UI/askauthentication.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" struct AskAuthParam diff --git a/protocols/IcqOscarJ/UI/askauthentication.h b/protocols/IcqOscarJ/UI/askauthentication.h index e60c034699..6a54717402 100644 --- a/protocols/IcqOscarJ/UI/askauthentication.h +++ b/protocols/IcqOscarJ/UI/askauthentication.h @@ -21,15 +21,8 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/UI/askauthentication.h,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - diff --git a/protocols/IcqOscarJ/UI/loginpassword.cpp b/protocols/IcqOscarJ/UI/loginpassword.cpp index b31f000f23..ab65212331 100644 --- a/protocols/IcqOscarJ/UI/loginpassword.cpp +++ b/protocols/IcqOscarJ/UI/loginpassword.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/UI/loginpassword.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/UI/loginpassword.h b/protocols/IcqOscarJ/UI/loginpassword.h index cfc31a354d..90bb05db5a 100644 --- a/protocols/IcqOscarJ/UI/loginpassword.h +++ b/protocols/IcqOscarJ/UI/loginpassword.h @@ -22,15 +22,8 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/UI/loginpassword.h,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - diff --git a/protocols/IcqOscarJ/UI/userinfotab.cpp b/protocols/IcqOscarJ/UI/userinfotab.cpp index f04d27f8b3..c5a516d24c 100644 --- a/protocols/IcqOscarJ/UI/userinfotab.cpp +++ b/protocols/IcqOscarJ/UI/userinfotab.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/UI/userinfotab.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Code for User details ICQ specific pages // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #define SVS_NORMAL 0 diff --git a/protocols/IcqOscarJ/UI/userinfotab.h b/protocols/IcqOscarJ/UI/userinfotab.h index 4ba7d69e34..6a54717402 100644 --- a/protocols/IcqOscarJ/UI/userinfotab.h +++ b/protocols/IcqOscarJ/UI/userinfotab.h @@ -21,13 +21,7 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/UI/userinfotab.h,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // diff --git a/protocols/IcqOscarJ/capabilities.cpp b/protocols/IcqOscarJ/capabilities.cpp index f0781d5f97..f994f861af 100644 --- a/protocols/IcqOscarJ/capabilities.cpp +++ b/protocols/IcqOscarJ/capabilities.cpp @@ -22,13 +22,7 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/capabilities.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Contains helper functions to handle oscar user capabilities. Scanning and // adding capabilities are assumed to be more timecritical than looking up @@ -38,7 +32,6 @@ // adding process too much. // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/capabilities.h b/protocols/IcqOscarJ/capabilities.h index 7ea66d41c2..3b6590dd09 100644 --- a/protocols/IcqOscarJ/capabilities.h +++ b/protocols/IcqOscarJ/capabilities.h @@ -22,19 +22,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/capabilities.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Contains helper functions to handle OSCAR user capabilities. // // ----------------------------------------------------------------------------- - #ifndef __CAPABILITIES_H #define __CAPABILITIES_H diff --git a/protocols/IcqOscarJ/chan_01login.cpp b/protocols/IcqOscarJ/chan_01login.cpp index 8fdeceda22..3c4c4febc6 100644 --- a/protocols/IcqOscarJ/chan_01login.cpp +++ b/protocols/IcqOscarJ/chan_01login.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/chan_01login.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/chan_02data.cpp b/protocols/IcqOscarJ/chan_02data.cpp index 991558474f..d55e0262e9 100644 --- a/protocols/IcqOscarJ/chan_02data.cpp +++ b/protocols/IcqOscarJ/chan_02data.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/chan_02data.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handle channel 2 (Data) packets // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/chan_03error.cpp b/protocols/IcqOscarJ/chan_03error.cpp index 5a67b0f95d..71c6e2ea7c 100644 --- a/protocols/IcqOscarJ/chan_03error.cpp +++ b/protocols/IcqOscarJ/chan_03error.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/chan_03error.c,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleErrorChannel(unsigned char* buf, WORD datalen) diff --git a/protocols/IcqOscarJ/chan_04close.cpp b/protocols/IcqOscarJ/chan_04close.cpp index 744d0316a3..3c9ee46350 100644 --- a/protocols/IcqOscarJ/chan_04close.cpp +++ b/protocols/IcqOscarJ/chan_04close.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/chan_04close.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" @@ -104,7 +97,7 @@ void CIcqProto::handleLoginReply(BYTE *buf, WORD datalen, serverthread_info *inf handleSignonError(wError); // we return only if the server did not gave us cookie (possible to connect with soft error) - if (!chain->getLength(0x06, 1)) + if (!chain->getLength(0x06, 1)) { disposeChain(&chain); SetCurrentStatus(ID_STATUS_OFFLINE); @@ -171,7 +164,7 @@ int CIcqProto::connectNewServer(serverthread_info *info) } if (hServerConn) - { + { /* Time to recreate the packet receiver */ info->hPacketRecver = (HANDLE)CallService(MS_NETLIB_CREATEPACKETRECVER, (WPARAM)hServerConn, 0x2400); if (!info->hPacketRecver) diff --git a/protocols/IcqOscarJ/chan_05ping.cpp b/protocols/IcqOscarJ/chan_05ping.cpp index d245bd65bf..53f094efee 100644 --- a/protocols/IcqOscarJ/chan_05ping.cpp +++ b/protocols/IcqOscarJ/chan_05ping.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/chan_05ping.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/changeinfo.h b/protocols/IcqOscarJ/changeinfo/changeinfo.h index ed1005ba5f..9cb2e37220 100644 --- a/protocols/IcqOscarJ/changeinfo/changeinfo.h +++ b/protocols/IcqOscarJ/changeinfo/changeinfo.h @@ -20,19 +20,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/changeinfo.h $ -// Revision : $Revision: 12945 $ -// Last change on : $Date: 2010-10-13 06:48:50 +0200 (Ср, 13 окт 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #ifndef __CHANGEINFO_H #define __CHANGEINFO_H diff --git a/protocols/IcqOscarJ/changeinfo/constants.cpp b/protocols/IcqOscarJ/changeinfo/constants.cpp index eaf402a9b0..92403a74f0 100644 --- a/protocols/IcqOscarJ/changeinfo/constants.cpp +++ b/protocols/IcqOscarJ/changeinfo/constants.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/constants.cpp $ -// Revision : $Revision: 8822 $ -// Last change on : $Date: 2009-01-11 19:17:05 +0200 (Вс, 11 янв 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/db.cpp b/protocols/IcqOscarJ/changeinfo/db.cpp index c9af84339d..643dcaa034 100644 --- a/protocols/IcqOscarJ/changeinfo/db.cpp +++ b/protocols/IcqOscarJ/changeinfo/db.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/db.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/dlgproc.cpp b/protocols/IcqOscarJ/changeinfo/dlgproc.cpp index a78fc64016..babb269c28 100644 --- a/protocols/IcqOscarJ/changeinfo/dlgproc.cpp +++ b/protocols/IcqOscarJ/changeinfo/dlgproc.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/dlgproc.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/editlist.cpp b/protocols/IcqOscarJ/changeinfo/editlist.cpp index 98411f0bb4..f2a1470fd3 100644 --- a/protocols/IcqOscarJ/changeinfo/editlist.cpp +++ b/protocols/IcqOscarJ/changeinfo/editlist.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/editlist.cpp $ -// Revision : $Revision: 11081 $ -// Last change on : $Date: 2009-12-22 00:10:01 +0200 (Вт, 22 дек 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/editstring.cpp b/protocols/IcqOscarJ/changeinfo/editstring.cpp index 905b833511..288351e8d3 100644 --- a/protocols/IcqOscarJ/changeinfo/editstring.cpp +++ b/protocols/IcqOscarJ/changeinfo/editstring.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/editstring.cpp $ -// Revision : $Revision: 11081 $ -// Last change on : $Date: 2009-12-22 00:10:01 +0200 (Вт, 22 дек 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/main.cpp b/protocols/IcqOscarJ/changeinfo/main.cpp index 9be4f7f6a3..22669be3aa 100644 --- a/protocols/IcqOscarJ/changeinfo/main.cpp +++ b/protocols/IcqOscarJ/changeinfo/main.cpp @@ -20,16 +20,9 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/main.cpp $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/changeinfo/upload.cpp b/protocols/IcqOscarJ/changeinfo/upload.cpp index 05193e467b..a468dc9f2b 100644 --- a/protocols/IcqOscarJ/changeinfo/upload.cpp +++ b/protocols/IcqOscarJ/changeinfo/upload.cpp @@ -20,18 +20,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/changeinfo/upload.cpp $ -// Revision : $Revision: 11081 $ -// Last change on : $Date: 2009-12-22 00:10:01 +0200 (Вт, 22 дек 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // ChangeInfo Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/channels.h b/protocols/IcqOscarJ/channels.h index 7c61ff09b4..ba10483b56 100644 --- a/protocols/IcqOscarJ/channels.h +++ b/protocols/IcqOscarJ/channels.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/channels.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Header for FLAP Channel packet handlers // // ----------------------------------------------------------------------------- - #ifndef __CHANNELS_H #define __CHANNELS_H diff --git a/protocols/IcqOscarJ/cookies.cpp b/protocols/IcqOscarJ/cookies.cpp index 2b9bc91cd0..87ffb4bc07 100644 --- a/protocols/IcqOscarJ/cookies.cpp +++ b/protocols/IcqOscarJ/cookies.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/cookies.cpp $ -// Revision : $Revision: 14075 $ -// Last change on : $Date: 2012-02-11 16:41:20 +0200 (Сб, 11 фев 2012) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handles packet & message cookies // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/cookies.h b/protocols/IcqOscarJ/cookies.h index 486674e77e..05e0d170eb 100644 --- a/protocols/IcqOscarJ/cookies.h +++ b/protocols/IcqOscarJ/cookies.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/cookies.h $ -// Revision : $Revision: 14141 $ -// Last change on : $Date: 2012-03-09 22:52:15 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __COOKIES_H #define __COOKIES_H diff --git a/protocols/IcqOscarJ/directpackets.cpp b/protocols/IcqOscarJ/directpackets.cpp index 71658f2665..b9cab630c5 100644 --- a/protocols/IcqOscarJ/directpackets.cpp +++ b/protocols/IcqOscarJ/directpackets.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/directpackets.cpp $ -// Revision : $Revision: 11570 $ -// Last change on : $Date: 2010-04-11 16:58:57 +0300 (Вс, 11 апр 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void EncryptDirectPacket(directconnect* dc, icq_packet* p); diff --git a/protocols/IcqOscarJ/directpackets.h b/protocols/IcqOscarJ/directpackets.h index 65f06e36d7..64528df4f4 100644 --- a/protocols/IcqOscarJ/directpackets.h +++ b/protocols/IcqOscarJ/directpackets.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/directpackets.h $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_DIRECTPACKETS_H #define __ICQ_DIRECTPACKETS_H diff --git a/protocols/IcqOscarJ/fam_01service.cpp b/protocols/IcqOscarJ/fam_01service.cpp index e12474d375..69d49a7e17 100644 --- a/protocols/IcqOscarJ/fam_01service.cpp +++ b/protocols/IcqOscarJ/fam_01service.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_01service.cpp $ -// Revision : $Revision: 14141 $ -// Last change on : $Date: 2012-03-09 22:52:15 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handles packets from Service family // // ----------------------------------------------------------------------------- - #include "icqoscar.h" extern capstr capXStatus[]; diff --git a/protocols/IcqOscarJ/fam_02location.cpp b/protocols/IcqOscarJ/fam_02location.cpp index 5510116e73..b7f0163917 100644 --- a/protocols/IcqOscarJ/fam_02location.cpp +++ b/protocols/IcqOscarJ/fam_02location.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_02location.cpp $ -// Revision : $Revision: 13284 $ -// Last change on : $Date: 2011-01-17 00:42:01 +0200 (Пн, 17 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handles packets from Location family // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/fam_03buddy.cpp b/protocols/IcqOscarJ/fam_03buddy.cpp index 3819972a8b..91f59147df 100644 --- a/protocols/IcqOscarJ/fam_03buddy.cpp +++ b/protocols/IcqOscarJ/fam_03buddy.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_03buddy.cpp $ -// Revision : $Revision: 13414 $ -// Last change on : $Date: 2011-03-09 15:17:26 +0200 (Ср, 09 мар 2011) $ -// Last change by : $Author: ashpynov@gmail.com $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handles packets from Buddy family // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/fam_04message.cpp b/protocols/IcqOscarJ/fam_04message.cpp index bf2ed45578..1a4974e998 100644 --- a/protocols/IcqOscarJ/fam_04message.cpp +++ b/protocols/IcqOscarJ/fam_04message.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_04message.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Handles packets from Family 4 ICBM Messages // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/fam_09bos.cpp b/protocols/IcqOscarJ/fam_09bos.cpp index e40d041543..327e045a96 100644 --- a/protocols/IcqOscarJ/fam_09bos.cpp +++ b/protocols/IcqOscarJ/fam_09bos.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_09bos.cpp $ -// Revision : $Revision: 8822 $ -// Last change on : $Date: 2009-01-11 19:17:05 +0200 (Вс, 11 янв 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleBosFam(unsigned char *pBuffer, WORD wBufferLength, snac_header* pSnacHeader) diff --git a/protocols/IcqOscarJ/fam_0alookup.cpp b/protocols/IcqOscarJ/fam_0alookup.cpp index f37f31f165..da77295ecb 100644 --- a/protocols/IcqOscarJ/fam_0alookup.cpp +++ b/protocols/IcqOscarJ/fam_0alookup.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_0alookup.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleLookupFam(BYTE *pBuffer, WORD wBufferLength, snac_header* pSnacHeader) diff --git a/protocols/IcqOscarJ/fam_0bstatus.cpp b/protocols/IcqOscarJ/fam_0bstatus.cpp index cde1395a33..7a979007e2 100644 --- a/protocols/IcqOscarJ/fam_0bstatus.cpp +++ b/protocols/IcqOscarJ/fam_0bstatus.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/fam_0bstatus.c,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/fam_13servclist.cpp b/protocols/IcqOscarJ/fam_13servclist.cpp index 7c5e0fffa1..1e92b034c9 100644 --- a/protocols/IcqOscarJ/fam_13servclist.cpp +++ b/protocols/IcqOscarJ/fam_13servclist.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_13servclist.cpp $ -// Revision : $Revision: 13699 $ -// Last change on : $Date: 2011-07-10 00:15:09 +0300 (Вс, 10 июл 2011) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/fam_15icqserver.cpp b/protocols/IcqOscarJ/fam_15icqserver.cpp index 6df21796c4..3f332e4f27 100644 --- a/protocols/IcqOscarJ/fam_15icqserver.cpp +++ b/protocols/IcqOscarJ/fam_15icqserver.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_15icqserver.cpp $ -// Revision : $Revision: 13027 $ -// Last change on : $Date: 2010-10-24 16:23:07 +0200 (Вс, 24 окт 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleIcqExtensionsFam(BYTE *pBuffer, WORD wBufferLength, snac_header* pSnacHeader) diff --git a/protocols/IcqOscarJ/fam_17signon.cpp b/protocols/IcqOscarJ/fam_17signon.cpp index c2a87f2ae0..b35a432a48 100644 --- a/protocols/IcqOscarJ/fam_17signon.cpp +++ b/protocols/IcqOscarJ/fam_17signon.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/fam_17signon.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleAuthorizationFam(BYTE *pBuffer, WORD wBufferLength, snac_header *pSnacHeader, serverthread_info *info) diff --git a/protocols/IcqOscarJ/families.h b/protocols/IcqOscarJ/families.h index efc1cabab7..61ac38f17a 100644 --- a/protocols/IcqOscarJ/families.h +++ b/protocols/IcqOscarJ/families.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/families.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Declaration for handlers of Channel 2 SNAC Families // // ----------------------------------------------------------------------------- - #ifndef __FAMILIES_H #define __FAMILIES_H diff --git a/protocols/IcqOscarJ/globals.h b/protocols/IcqOscarJ/globals.h index 34a34cf2f9..c0d8326689 100644 --- a/protocols/IcqOscarJ/globals.h +++ b/protocols/IcqOscarJ/globals.h @@ -22,19 +22,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/globals.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Contains global types & variables declarations. // // ----------------------------------------------------------------------------- - #ifndef __GLOBALS_H #define __GLOBALS_H diff --git a/protocols/IcqOscarJ/guids.h b/protocols/IcqOscarJ/guids.h index ae4d50552f..24073deec4 100644 --- a/protocols/IcqOscarJ/guids.h +++ b/protocols/IcqOscarJ/guids.h @@ -22,19 +22,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/guids.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Contains helper functions to handle oscar message GUIDs. // // ----------------------------------------------------------------------------- - #ifndef __GUIDS_H #define __GUIDS_H diff --git a/protocols/IcqOscarJ/i18n.cpp b/protocols/IcqOscarJ/i18n.cpp index 5ebfded9ce..535feebcdf 100644 --- a/protocols/IcqOscarJ/i18n.cpp +++ b/protocols/IcqOscarJ/i18n.cpp @@ -22,19 +22,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/i18n.cpp $ -// Revision : $Revision: 11818 $ -// Last change on : $Date: 2010-05-23 15:37:24 +0300 (Вс, 23 май 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Contains helper functions to convert text messages between different // character sets. // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/i18n.h b/protocols/IcqOscarJ/i18n.h index 2721779ec9..eaeaad54f3 100644 --- a/protocols/IcqOscarJ/i18n.h +++ b/protocols/IcqOscarJ/i18n.h @@ -22,19 +22,12 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/i18n.h $ -// Revision : $Revision: 11599 $ -// Last change on : $Date: 2010-04-19 09:00:16 +0300 (Пн, 19 апр 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Helper functions to convert text messages between different character sets. // // ----------------------------------------------------------------------------- - #ifndef __I18N_H #define __I18N_H diff --git a/protocols/IcqOscarJ/iconlib.cpp b/protocols/IcqOscarJ/iconlib.cpp index 3d95822a1f..3c6408c60d 100644 --- a/protocols/IcqOscarJ/iconlib.cpp +++ b/protocols/IcqOscarJ/iconlib.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/iconlib.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Support for IcoLib plug-in // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include "m_icolib.h" diff --git a/protocols/IcqOscarJ/iconlib.h b/protocols/IcqOscarJ/iconlib.h index 7cd72bb8cf..3a7482f872 100644 --- a/protocols/IcqOscarJ/iconlib.h +++ b/protocols/IcqOscarJ/iconlib.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/iconlib.h $ -// Revision : $Revision: 11719 $ -// Last change on : $Date: 2010-05-09 01:01:13 +0300 (Вс, 09 май 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Headers for IconLib Plugin / module support // // ----------------------------------------------------------------------------- - #ifndef __ICONLIB_H #define __ICONLIB_H diff --git a/protocols/IcqOscarJ/icq_advsearch.cpp b/protocols/IcqOscarJ/icq_advsearch.cpp index bbddbcbb8e..6c3a3ffa89 100644 --- a/protocols/IcqOscarJ/icq_advsearch.cpp +++ b/protocols/IcqOscarJ/icq_advsearch.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_advsearch.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" static void InitComboBox(HWND hwndCombo, const FieldNamesItem *names) diff --git a/protocols/IcqOscarJ/icq_advsearch.h b/protocols/IcqOscarJ/icq_advsearch.h index 0151450a41..83bf35af93 100644 --- a/protocols/IcqOscarJ/icq_advsearch.h +++ b/protocols/IcqOscarJ/icq_advsearch.h @@ -21,19 +21,12 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/icq_advsearch.h,v $ -// Revision : $Revision: 9261 $ -// Last change on : $Date: 2009-03-28 22:16:39 +0300 (Сб, 28 мар 2009) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - INT_PTR CALLBACK AdvancedSearchDlgProc(HWND hwndDlg,UINT message,WPARAM wParam,LPARAM lParam); PBYTE createAdvancedSearchStructure(HWND hwndDlg,int *length); diff --git a/protocols/IcqOscarJ/icq_avatar.cpp b/protocols/IcqOscarJ/icq_avatar.cpp index 99b29b6b76..1678f609e5 100644 --- a/protocols/IcqOscarJ/icq_avatar.cpp +++ b/protocols/IcqOscarJ/icq_avatar.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_avatar.cpp $ -// Revision : $Revision: 14141 $ -// Last change on : $Date: 2012-03-09 22:52:15 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Manages Avatar connection, provides internal service for handling avatars // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include "m_folders.h" diff --git a/protocols/IcqOscarJ/icq_avatar.h b/protocols/IcqOscarJ/icq_avatar.h index e6d140795a..7ac8ed7469 100644 --- a/protocols/IcqOscarJ/icq_avatar.h +++ b/protocols/IcqOscarJ/icq_avatar.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_avatar.h $ -// Revision : $Revision: 14141 $ -// Last change on : $Date: 2012-03-09 22:52:15 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Avatars connection support declarations // // ----------------------------------------------------------------------------- - #ifndef __ICQ_AVATAR_H #define __ICQ_AVATAR_H diff --git a/protocols/IcqOscarJ/icq_clients.cpp b/protocols/IcqOscarJ/icq_clients.cpp index b09b2fb785..9e82bea7b8 100644 --- a/protocols/IcqOscarJ/icq_clients.cpp +++ b/protocols/IcqOscarJ/icq_clients.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_clients.cpp $ -// Revision : $Revision: 13847 $ -// Last change on : $Date: 2011-09-07 22:12:32 +0300 (Ср, 07 сен 2011) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Provides capability & signature based client detection // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_constants.h b/protocols/IcqOscarJ/icq_constants.h index acb5de9ad3..aae88a8f69 100644 --- a/protocols/IcqOscarJ/icq_constants.h +++ b/protocols/IcqOscarJ/icq_constants.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_constants.h $ -// Revision : $Revision: 14075 $ -// Last change on : $Date: 2012-02-11 16:41:20 +0200 (Сб, 11 фев 2012) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Global constants and default settings are defined here // // ----------------------------------------------------------------------------- - // Most of the protocol constants follow the naming conventions of the // Oscar documentation at http://iserverd.khstu.ru/oscar/index.html // BIG THANKS to Alexandr for maintaining this site and to everyone diff --git a/protocols/IcqOscarJ/icq_db.cpp b/protocols/IcqOscarJ/icq_db.cpp index 12b412ced3..b142c30cac 100644 --- a/protocols/IcqOscarJ/icq_db.cpp +++ b/protocols/IcqOscarJ/icq_db.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_db.cpp $ -// Revision : $Revision: 12062 $ -// Last change on : $Date: 2010-06-25 10:49:28 +0300 (Пт, 25 июн 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Internal Database API // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_db.h b/protocols/IcqOscarJ/icq_db.h index 1d841f4860..5bfc22d58b 100644 --- a/protocols/IcqOscarJ/icq_db.h +++ b/protocols/IcqOscarJ/icq_db.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_db.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_DB_H #define __ICQ_DB_H diff --git a/protocols/IcqOscarJ/icq_direct.cpp b/protocols/IcqOscarJ/icq_direct.cpp index 55e860adea..7779f1bad7 100644 --- a/protocols/IcqOscarJ/icq_direct.cpp +++ b/protocols/IcqOscarJ/icq_direct.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_direct.cpp $ -// Revision : $Revision: 11570 $ -// Last change on : $Date: 2010-04-11 16:58:57 +0300 (Вс, 11 апр 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" struct directthreadstartinfo diff --git a/protocols/IcqOscarJ/icq_direct.h b/protocols/IcqOscarJ/icq_direct.h index 851f0cc046..3cf91cb493 100644 --- a/protocols/IcqOscarJ/icq_direct.h +++ b/protocols/IcqOscarJ/icq_direct.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_direct.h $ -// Revision : $Revision: 10352 $ -// Last change on : $Date: 2009-07-18 01:39:53 +0300 (Сб, 18 июл 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_DIRECT_H #define __ICQ_DIRECT_H diff --git a/protocols/IcqOscarJ/icq_directmsg.cpp b/protocols/IcqOscarJ/icq_directmsg.cpp index 5220c91cd3..89fbb7cea5 100644 --- a/protocols/IcqOscarJ/icq_directmsg.cpp +++ b/protocols/IcqOscarJ/icq_directmsg.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_directmsg.cpp $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleDirectMessage(directconnect* dc, PBYTE buf, WORD wLen) diff --git a/protocols/IcqOscarJ/icq_fieldnames.cpp b/protocols/IcqOscarJ/icq_fieldnames.cpp index 85a7aad8e9..d953a081cf 100644 --- a/protocols/IcqOscarJ/icq_fieldnames.cpp +++ b/protocols/IcqOscarJ/icq_fieldnames.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_fieldnames.cpp $ -// Revision : $Revision: 11199 $ -// Last change on : $Date: 2010-01-29 14:45:44 +0200 (Пт, 29 янв 2010) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_fieldnames.h b/protocols/IcqOscarJ/icq_fieldnames.h index d3cf772c13..cf15475299 100644 --- a/protocols/IcqOscarJ/icq_fieldnames.h +++ b/protocols/IcqOscarJ/icq_fieldnames.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_fieldnames.h $ -// Revision : $Revision: 8822 $ -// Last change on : $Date: 2009-01-11 19:17:05 +0200 (Вс, 11 янв 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - struct FieldNamesItem { int code; diff --git a/protocols/IcqOscarJ/icq_filerequests.cpp b/protocols/IcqOscarJ/icq_filerequests.cpp index df49717199..af9e0f3bd7 100644 --- a/protocols/IcqOscarJ/icq_filerequests.cpp +++ b/protocols/IcqOscarJ/icq_filerequests.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_filerequests.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" void CIcqProto::handleFileAck(PBYTE buf, WORD wLen, DWORD dwUin, DWORD dwCookie, WORD wStatus, char* pszText) diff --git a/protocols/IcqOscarJ/icq_filetransfer.cpp b/protocols/IcqOscarJ/icq_filetransfer.cpp index ed81ad4c5a..61484c3987 100644 --- a/protocols/IcqOscarJ/icq_filetransfer.cpp +++ b/protocols/IcqOscarJ/icq_filetransfer.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_filetransfer.cpp $ -// Revision : $Revision: 12331 $ -// Last change on : $Date: 2010-08-18 16:59:50 +0300 (Ср, 18 авг 2010) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_firstrun.cpp b/protocols/IcqOscarJ/icq_firstrun.cpp index c1c596a60b..1208d6d0ec 100644 --- a/protocols/IcqOscarJ/icq_firstrun.cpp +++ b/protocols/IcqOscarJ/icq_firstrun.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_firstrun.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_http.cpp b/protocols/IcqOscarJ/icq_http.cpp index 1acc5f54d9..3e50db43ed 100644 --- a/protocols/IcqOscarJ/icq_http.cpp +++ b/protocols/IcqOscarJ/icq_http.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/icq_http.c,v $ -// Revision : $Revision: 12606 $ -// Last change on : $Date: 2010-09-06 15:38:27 +0300 (Пн, 06 сен 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // HTTP Gateway Handling routines // // ----------------------------------------------------------------------------- - #include "icqoscar.h" int icq_httpGatewayInit(HANDLE hConn, NETLIBOPENCONNECTION *nloc, NETLIBHTTPREQUEST *nlhr) diff --git a/protocols/IcqOscarJ/icq_http.h b/protocols/IcqOscarJ/icq_http.h index 60fb2ba416..017a5ea5fc 100644 --- a/protocols/IcqOscarJ/icq_http.h +++ b/protocols/IcqOscarJ/icq_http.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/icq_http.h,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_HTTP_H #define __ICQ_HTTP_H diff --git a/protocols/IcqOscarJ/icq_infoupdate.cpp b/protocols/IcqOscarJ/icq_infoupdate.cpp index dd73af7ded..a5bf1656a7 100644 --- a/protocols/IcqOscarJ/icq_infoupdate.cpp +++ b/protocols/IcqOscarJ/icq_infoupdate.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_infoupdate.cpp $ -// Revision : $Revision: 13091 $ -// Last change on : $Date: 2010-11-01 21:07:18 +0200 (Пн, 01 ноя 2010) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Background thread for automatic update of user details // // ----------------------------------------------------------------------------- - #include "icqoscar.h" @@ -401,13 +394,14 @@ void __cdecl CIcqProto::InfoUpdateThread( void* ) NetLog_Server("%s thread ended.", "Info-Update"); } - // Clean up before exit void CIcqProto::icq_InfoUpdateCleanup(void) { bInfoUpdateRunning = FALSE; SetEvent(hInfoQueueEvent); // break queue loop - if (hInfoThread) ICQWaitForSingleObject(hInfoThread, INFINITE, TRUE); + if (hInfoThread) + ICQWaitForSingleObject(hInfoThread, INFINITE, TRUE); + // Uninit mutex SAFE_DELETE(&infoUpdateMutex); CloseHandle(hInfoQueueEvent); diff --git a/protocols/IcqOscarJ/icq_infoupdate.h b/protocols/IcqOscarJ/icq_infoupdate.h index 6d59811815..b5f950544f 100644 --- a/protocols/IcqOscarJ/icq_infoupdate.h +++ b/protocols/IcqOscarJ/icq_infoupdate.h @@ -22,13 +22,7 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_infoupdate.h $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // diff --git a/protocols/IcqOscarJ/icq_menu.cpp b/protocols/IcqOscarJ/icq_menu.cpp index 054cfd0b09..8c67310963 100644 --- a/protocols/IcqOscarJ/icq_menu.cpp +++ b/protocols/IcqOscarJ/icq_menu.cpp @@ -22,16 +22,9 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: icq_menu.cpp $ -// Revision : $Revision: 0 $ -// Last change on : $Date: 2009-12-21 19:52:36 +0300 $ -// Last change by : $Author: Unsane $ -// -// DESCRIPTION: +// DESCRIPTION: // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include diff --git a/protocols/IcqOscarJ/icq_opts.cpp b/protocols/IcqOscarJ/icq_opts.cpp index da34fe2cdb..44c1881d14 100644 --- a/protocols/IcqOscarJ/icq_opts.cpp +++ b/protocols/IcqOscarJ/icq_opts.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_opts.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include diff --git a/protocols/IcqOscarJ/icq_opts.h b/protocols/IcqOscarJ/icq_opts.h index 383a59d7f9..b26a9fbb9f 100644 --- a/protocols/IcqOscarJ/icq_opts.h +++ b/protocols/IcqOscarJ/icq_opts.h @@ -22,16 +22,9 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_opts.h $ -// Revision : $Revision: 8822 $ -// Last change on : $Date: 2009-01-11 19:17:05 +0200 (Вс, 11 янв 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - int IcqOptInit(WPARAM, LPARAM); diff --git a/protocols/IcqOscarJ/icq_packet.cpp b/protocols/IcqOscarJ/icq_packet.cpp index 3de6bd055b..79241cf297 100644 --- a/protocols/IcqOscarJ/icq_packet.cpp +++ b/protocols/IcqOscarJ/icq_packet.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_packet.cpp $ -// Revision : $Revision: 13213 $ -// Last change on : $Date: 2010-12-22 08:54:39 +0200 (Ср, 22 дек 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_packet.h b/protocols/IcqOscarJ/icq_packet.h index 8ffaea6068..ccaeb91fcc 100644 --- a/protocols/IcqOscarJ/icq_packet.h +++ b/protocols/IcqOscarJ/icq_packet.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_packet.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_PACKET_H #define __ICQ_PACKET_H diff --git a/protocols/IcqOscarJ/icq_popups.cpp b/protocols/IcqOscarJ/icq_popups.cpp index c593dd6367..f7c70569e1 100644 --- a/protocols/IcqOscarJ/icq_popups.cpp +++ b/protocols/IcqOscarJ/icq_popups.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_popups.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // PopUp Plugin stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" BOOL bPopUpService = FALSE; diff --git a/protocols/IcqOscarJ/icq_popups.h b/protocols/IcqOscarJ/icq_popups.h index 92c6882554..a42c230634 100644 --- a/protocols/IcqOscarJ/icq_popups.h +++ b/protocols/IcqOscarJ/icq_popups.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_popups.h $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Headers for PopUp Plugin support // // ----------------------------------------------------------------------------- - #ifndef __ICQ_POPUPS_H #define __ICQ_POPUPS_H diff --git a/protocols/IcqOscarJ/icq_proto.cpp b/protocols/IcqOscarJ/icq_proto.cpp index 342153e976..ce46d9f719 100644 --- a/protocols/IcqOscarJ/icq_proto.cpp +++ b/protocols/IcqOscarJ/icq_proto.cpp @@ -22,24 +22,16 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_proto.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Protocol Interface Implementation // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include "m_icolib.h" #include "m_updater.h" - extern PLUGININFOEX pluginInfo; extern HANDLE hExtraXStatus; @@ -249,15 +241,6 @@ CIcqProto::~CIcqProto() m_bXStatusEnabled = 10; // block clist changing m_bMoodsEnabled = 10; - // Make sure all connections are closed - CloseContactDirectConns(NULL); - while ( true ) { - if ( !directConns.getCount()) - break; - - Sleep(10); /* yeah, ugly */ - } - // Serv-list update board clean-up FlushServerIDs(); /// TODO: make sure server-list handler thread is not running @@ -382,6 +365,9 @@ int CIcqProto::OnPreShutdown(WPARAM wParam,LPARAM lParam) { // all threads should be terminated here icq_InfoUpdateCleanup(); + + // Make sure all connections are closed + CloseContactDirectConns(NULL); return 0; } diff --git a/protocols/IcqOscarJ/icq_proto.h b/protocols/IcqOscarJ/icq_proto.h index 329ab4d897..6c2b4a059e 100644 --- a/protocols/IcqOscarJ/icq_proto.h +++ b/protocols/IcqOscarJ/icq_proto.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_proto.h $ -// Revision : $Revision: 14141 $ -// Last change on : $Date: 2012-03-09 22:52:15 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Protocol Interface declarations // // ----------------------------------------------------------------------------- - #ifndef _ICQ_PROTO_H_ #define _ICQ_PROTO_H_ diff --git a/protocols/IcqOscarJ/icq_rates.cpp b/protocols/IcqOscarJ/icq_rates.cpp index ebd6a13b8f..09a1b27396 100644 --- a/protocols/IcqOscarJ/icq_rates.cpp +++ b/protocols/IcqOscarJ/icq_rates.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_rates.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Rate Management stuff // // ----------------------------------------------------------------------------- - #include "icqoscar.h" // diff --git a/protocols/IcqOscarJ/icq_rates.h b/protocols/IcqOscarJ/icq_rates.h index ca3212964d..de5d9b76d0 100644 --- a/protocols/IcqOscarJ/icq_rates.h +++ b/protocols/IcqOscarJ/icq_rates.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_rates.h $ -// Revision : $Revision: 11570 $ -// Last change on : $Date: 2010-04-11 16:58:57 +0300 (Вс, 11 апр 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Rate management // // ----------------------------------------------------------------------------- - #ifndef __ICQ_RATES_H #define __ICQ_RATES_H diff --git a/protocols/IcqOscarJ/icq_server.cpp b/protocols/IcqOscarJ/icq_server.cpp index a3621ec6aa..c12d6ef362 100644 --- a/protocols/IcqOscarJ/icq_server.cpp +++ b/protocols/IcqOscarJ/icq_server.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_server.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Manages main server connection, low-level communication // // ----------------------------------------------------------------------------- - #include "icqoscar.h" @@ -79,7 +72,6 @@ void __cdecl CIcqProto::ServerThread(serverthread_start_info *infoParam) return; } } - } // Login error @@ -225,7 +217,8 @@ void __cdecl CIcqProto::ServerThread(serverthread_start_info *infoParam) servlistPendingFlushOperations(); // clear pending operations list - { // release rates queues + // release rates queues + { icq_lock l(m_ratesMutex); SAFE_DELETE((void_struct**)&m_ratesQueue_Request); diff --git a/protocols/IcqOscarJ/icq_server.h b/protocols/IcqOscarJ/icq_server.h index df40332a3d..231ebaaa4d 100644 --- a/protocols/IcqOscarJ/icq_server.h +++ b/protocols/IcqOscarJ/icq_server.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_server.h $ -// Revision : $Revision: 13213 $ -// Last change on : $Date: 2010-12-22 08:54:39 +0200 (Ср, 22 дек 2010) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Declarations for server thread // // ----------------------------------------------------------------------------- - #ifndef __ICQ_SERVER_H #define __ICQ_SERVER_H diff --git a/protocols/IcqOscarJ/icq_servlist.cpp b/protocols/IcqOscarJ/icq_servlist.cpp index 5be3c895d8..b2adc4831c 100644 --- a/protocols/IcqOscarJ/icq_servlist.cpp +++ b/protocols/IcqOscarJ/icq_servlist.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_servlist.cpp $ -// Revision : $Revision: 14146 $ -// Last change on : $Date: 2012-03-09 23:54:49 +0200 (Пт, 09 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Functions that handles list of used server IDs, sends low-level packets for SSI information // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_servlist.h b/protocols/IcqOscarJ/icq_servlist.h index c16ee552a5..76118ce3c0 100644 --- a/protocols/IcqOscarJ/icq_servlist.h +++ b/protocols/IcqOscarJ/icq_servlist.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_servlist.h $ -// Revision : $Revision: 11805 $ -// Last change on : $Date: 2010-05-20 23:54:42 +0300 (Чт, 20 май 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_SERVLIST_H #define __ICQ_SERVLIST_H diff --git a/protocols/IcqOscarJ/icq_uploadui.cpp b/protocols/IcqOscarJ/icq_uploadui.cpp index 6073de6b10..217389b463 100644 --- a/protocols/IcqOscarJ/icq_uploadui.cpp +++ b/protocols/IcqOscarJ/icq_uploadui.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_uploadui.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Implements Manage Server List dialog // // ----------------------------------------------------------------------------- - #include "icqoscar.h" static int bListInit = 0; diff --git a/protocols/IcqOscarJ/icq_uploadui.h b/protocols/IcqOscarJ/icq_uploadui.h index bc5cd4d17a..90bb05db5a 100644 --- a/protocols/IcqOscarJ/icq_uploadui.h +++ b/protocols/IcqOscarJ/icq_uploadui.h @@ -22,13 +22,7 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/icq_uploadui.h,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // diff --git a/protocols/IcqOscarJ/icq_xstatus.cpp b/protocols/IcqOscarJ/icq_xstatus.cpp index caf4b8e627..92ae0eea14 100644 --- a/protocols/IcqOscarJ/icq_xstatus.cpp +++ b/protocols/IcqOscarJ/icq_xstatus.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_xstatus.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Support for Custom Statuses // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include "m_extraicons.h" diff --git a/protocols/IcqOscarJ/icq_xtraz.cpp b/protocols/IcqOscarJ/icq_xtraz.cpp index a4152fc5ea..2b73274365 100644 --- a/protocols/IcqOscarJ/icq_xtraz.cpp +++ b/protocols/IcqOscarJ/icq_xtraz.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_xtraz.cpp $ -// Revision : $Revision: 13678 $ -// Last change on : $Date: 2011-07-04 00:53:23 +0300 (Пн, 04 июл 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Internal Xtraz API // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icq_xtraz.h b/protocols/IcqOscarJ/icq_xtraz.h index 8393e7b68f..28578e71a5 100644 --- a/protocols/IcqOscarJ/icq_xtraz.h +++ b/protocols/IcqOscarJ/icq_xtraz.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icq_xtraz.h $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQ_XTRAZ_H #define __ICQ_XTRAZ_H diff --git a/protocols/IcqOscarJ/icqosc_svcs.cpp b/protocols/IcqOscarJ/icqosc_svcs.cpp index 470f1f3030..15a8b17013 100644 --- a/protocols/IcqOscarJ/icqosc_svcs.cpp +++ b/protocols/IcqOscarJ/icqosc_svcs.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icqosc_svcs.cpp $ -// Revision : $Revision: 14152 $ -// Last change on : $Date: 2012-03-10 19:53:00 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // High-level code for exported API services // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icqosc_svcs.h b/protocols/IcqOscarJ/icqosc_svcs.h index d2239f0e27..844eecee51 100644 --- a/protocols/IcqOscarJ/icqosc_svcs.h +++ b/protocols/IcqOscarJ/icqosc_svcs.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icqosc_svcs.h $ -// Revision : $Revision: 9261 $ -// Last change on : $Date: 2009-03-28 22:16:39 +0300 (Сб, 28 мар 2009) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __ICQOSC_SVCS_H #define __ICQOSC_SVCS_H diff --git a/protocols/IcqOscarJ/icqoscar.cpp b/protocols/IcqOscarJ/icqoscar.cpp index b7344437de..5ce67145cd 100644 --- a/protocols/IcqOscarJ/icqoscar.cpp +++ b/protocols/IcqOscarJ/icqoscar.cpp @@ -21,13 +21,7 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $Source: /cvsroot/miranda/miranda/protocols/IcqOscarJ/icqoscar.c,v $ -// Revision : $Revision: 7500 $ -// Last change on : $Date: 2008-03-24 20:07:37 +0200 (Пн, 24 мар 2008) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // The only purpose of this file is to make sure that the precompiled headers // are included and compiled. The Visual Studio settings for this file must be @@ -38,5 +32,4 @@ // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/icqoscar.h b/protocols/IcqOscarJ/icqoscar.h index 3a4291d1dc..1efd1ffebb 100644 --- a/protocols/IcqOscarJ/icqoscar.h +++ b/protocols/IcqOscarJ/icqoscar.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/icqoscar.h $ -// Revision : $Revision: 14085 $ -// Last change on : $Date: 2012-02-13 12:55:56 +0200 (Пн, 13 фев 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Includes all header files that should be precompiled to speed up compilation. // // ----------------------------------------------------------------------------- - #define MIRANDA_VER 0x0A00 #define _WIN32_WINNT 0x0501 diff --git a/protocols/IcqOscarJ/init.cpp b/protocols/IcqOscarJ/init.cpp index c876fef7b2..da40414e15 100644 --- a/protocols/IcqOscarJ/init.cpp +++ b/protocols/IcqOscarJ/init.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/init.cpp $ -// Revision : $Revision: 13596 $ -// Last change on : $Date: 2011-04-15 22:07:23 +0300 (Пт, 15 апр 2011) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" #include "m_extraicons.h" diff --git a/protocols/IcqOscarJ/init.h b/protocols/IcqOscarJ/init.h index 0f49a0bf22..0e93a8a89f 100644 --- a/protocols/IcqOscarJ/init.h +++ b/protocols/IcqOscarJ/init.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/init.h $ -// Revision : $Revision: 13284 $ -// Last change on : $Date: 2011-01-17 00:42:01 +0200 (Пн, 17 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - // Debug defines #define DBG_CAPHTML #define DBG_CAPMTN diff --git a/protocols/IcqOscarJ/log.cpp b/protocols/IcqOscarJ/log.cpp index cb8f923b36..402863a456 100644 --- a/protocols/IcqOscarJ/log.cpp +++ b/protocols/IcqOscarJ/log.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/log.cpp $ -// Revision : $Revision: 10574 $ -// Last change on : $Date: 2009-08-18 20:20:42 +0300 (Вт, 18 авг 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" extern BOOL bPopUpService; diff --git a/protocols/IcqOscarJ/log.h b/protocols/IcqOscarJ/log.h index ef5079134b..6da25df0d7 100644 --- a/protocols/IcqOscarJ/log.h +++ b/protocols/IcqOscarJ/log.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/log.h $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __LOG_H #define __LOG_H diff --git a/protocols/IcqOscarJ/oscar_filetransfer.cpp b/protocols/IcqOscarJ/oscar_filetransfer.cpp index bc359f0fa1..8a0db9a6f3 100644 --- a/protocols/IcqOscarJ/oscar_filetransfer.cpp +++ b/protocols/IcqOscarJ/oscar_filetransfer.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/oscar_filetransfer.cpp $ -// Revision : $Revision: 14229 $ -// Last change on : $Date: 2012-05-14 03:26:21 +0300 (Пн, 14 май 2012) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // OSCAR File-Transfers implementation // // ----------------------------------------------------------------------------- - #include "icqoscar.h" struct oscarthreadstartinfo diff --git a/protocols/IcqOscarJ/oscar_filetransfer.h b/protocols/IcqOscarJ/oscar_filetransfer.h index a635f06e8f..fa6ec9169e 100644 --- a/protocols/IcqOscarJ/oscar_filetransfer.h +++ b/protocols/IcqOscarJ/oscar_filetransfer.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/oscar_filetransfer.h $ -// Revision : $Revision: 11353 $ -// Last change on : $Date: 2010-03-10 02:21:03 +0200 (Ср, 10 мар 2010) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // OSCAR File-Transfers headers // // ----------------------------------------------------------------------------- - #ifndef __OSCAR_FILETRANSFER_H #define __OSCAR_FILETRANSFER_H diff --git a/protocols/IcqOscarJ/stdpackets.cpp b/protocols/IcqOscarJ/stdpackets.cpp index c0bf42238d..3bc9502560 100644 --- a/protocols/IcqOscarJ/stdpackets.cpp +++ b/protocols/IcqOscarJ/stdpackets.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/stdpackets.cpp $ -// Revision : $Revision: 13915 $ -// Last change on : $Date: 2011-11-08 01:09:29 +0200 (Вт, 08 ноя 2011) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" extern const int moodXStatus[]; diff --git a/protocols/IcqOscarJ/stdpackets.h b/protocols/IcqOscarJ/stdpackets.h index 5d4903fc89..b656d713c6 100644 --- a/protocols/IcqOscarJ/stdpackets.h +++ b/protocols/IcqOscarJ/stdpackets.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/stdpackets.h $ -// Revision : $Revision: 7484 $ -// Last change on : $Date: 2008-03-21 11:43:39 +0200 (Пт, 21 мар 2008) $ -// Last change by : $Author: ghazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Low-level functions that really sends data to server // // ----------------------------------------------------------------------------- - #ifndef __STDPACKETS_H #define __STDPACKETS_H diff --git a/protocols/IcqOscarJ/tlv.cpp b/protocols/IcqOscarJ/tlv.cpp index af6bde4fe7..7c4eafca3a 100644 --- a/protocols/IcqOscarJ/tlv.cpp +++ b/protocols/IcqOscarJ/tlv.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/tlv.cpp $ -// Revision : $Revision: 13324 $ -// Last change on : $Date: 2011-01-23 17:58:59 +0200 (Вс, 23 янв 2011) $ -// Last change by : $Author: borkra $ -// -// DESCRIPTION: +// DESCRIPTION: // // Helper functions for Oscar TLV chains // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/tlv.h b/protocols/IcqOscarJ/tlv.h index 12553bde49..5cee00c7c4 100644 --- a/protocols/IcqOscarJ/tlv.h +++ b/protocols/IcqOscarJ/tlv.h @@ -22,18 +22,11 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/tlv.h $ -// Revision : $Revision: 8822 $ -// Last change on : $Date: 2009-01-11 19:17:05 +0200 (Вс, 11 янв 2009) $ -// Last change by : $Author: jokusoftware $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __TLV_H #define __TLV_H diff --git a/protocols/IcqOscarJ/utilities.cpp b/protocols/IcqOscarJ/utilities.cpp index d80457d11b..7ec9edcc8e 100644 --- a/protocols/IcqOscarJ/utilities.cpp +++ b/protocols/IcqOscarJ/utilities.cpp @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/utilities.cpp $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #include "icqoscar.h" diff --git a/protocols/IcqOscarJ/utilities.h b/protocols/IcqOscarJ/utilities.h index b469c9e4f4..4d881e578e 100644 --- a/protocols/IcqOscarJ/utilities.h +++ b/protocols/IcqOscarJ/utilities.h @@ -22,18 +22,11 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. // // ----------------------------------------------------------------------------- -// -// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/utilities.h $ -// Revision : $Revision: 14148 $ -// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ -// Last change by : $Author: george.hazan $ -// -// DESCRIPTION: +// DESCRIPTION: // // Describe me here please... // // ----------------------------------------------------------------------------- - #ifndef __UTILITIES_H #define __UTILITIES_H diff --git a/src/core/miranda.cpp b/src/core/miranda.cpp index 64ec124378..2e0759c04d 100644 --- a/src/core/miranda.cpp +++ b/src/core/miranda.cpp @@ -83,7 +83,7 @@ HANDLE hShutdownEvent, hPreShutdownEvent; static HANDLE hWaitObjects[MAXIMUM_WAIT_OBJECTS-1]; static char *pszWaitServices[MAXIMUM_WAIT_OBJECTS-1]; static int waitObjectCount = 0; -HANDLE hMirandaShutdown, hThreadQueueEmpty; +HANDLE hMirandaShutdown; HINSTANCE hInst; int hLangpack = 0; @@ -350,7 +350,6 @@ exit: UnloadNewPluginsModule(); UnloadCoreModule(); CloseHandle(hMirandaShutdown); - CloseHandle(hThreadQueueEmpty); if (pTaskbarInterface) pTaskbarInterface->Release(); @@ -446,7 +445,6 @@ static INT_PTR RemoveWait(WPARAM wParam, LPARAM) int LoadSystemModule(void) { hMirandaShutdown = CreateEvent(NULL, TRUE, FALSE, NULL); - hThreadQueueEmpty = CreateEvent(NULL, TRUE, TRUE, NULL); hShutdownEvent = CreateHookableEvent(ME_SYSTEM_SHUTDOWN); hPreShutdownEvent = CreateHookableEvent(ME_SYSTEM_PRESHUTDOWN); -- cgit v1.2.3