summaryrefslogtreecommitdiff
path: root/plugins/CmdLine/src/utils.cpp
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2013-04-09 20:03:46 +0000
committerGeorge Hazan <george.hazan@gmail.com>2013-04-09 20:03:46 +0000
commitbcb27264ba737778e5d3edad36088bacf74f0236 (patch)
treefd1f57744dd380b7babe312a0ab5dc60b48854f2 /plugins/CmdLine/src/utils.cpp
parent940231dc5a484b03a278900e1880aa083472b601 (diff)
- short function names allows to write database loops in one string;
- 'continue' operator can be used then; - multiple bugs fixed in clists; - code becomes much more compact; git-svn-id: http://svn.miranda-ng.org/main/trunk@4403 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/CmdLine/src/utils.cpp')
-rw-r--r--plugins/CmdLine/src/utils.cpp17
1 files changed, 6 insertions, 11 deletions
diff --git a/plugins/CmdLine/src/utils.cpp b/plugins/CmdLine/src/utils.cpp
index 626141e68f..1dddb04310 100644
--- a/plugins/CmdLine/src/utils.cpp
+++ b/plugins/CmdLine/src/utils.cpp
@@ -337,32 +337,27 @@ TCHAR *GetContactID(HANDLE hContact, char *szProto)
#pragma warning (disable: 4312)
HANDLE GetContactFromID(TCHAR *szID, char *szProto)
{
- HANDLE hContact = db_find_first();
- TCHAR *szHandle;
TCHAR dispName[1024];
char cProtocol[256];
char *tmp;
int found = 0;
- while (hContact)
- {
+ for (HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) {
GetContactProto(hContact, cProtocol, sizeof(cProtocol));
- szHandle = GetContactID(hContact, cProtocol);
+ TCHAR *szHandle = GetContactID(hContact, cProtocol);
tmp = (char *) CallService(MS_CLIST_GETCONTACTDISPLAYNAME, (WPARAM) hContact, 0);
STRNCPY(dispName, tmp, sizeof(dispName));
if ((szHandle) && ((_tcsicmp(szHandle, szID) == 0) || (_tcsicmp(dispName, szID) == 0)) && ((szProto == NULL) || (_stricmp(szProto, cProtocol) == 0)))
- {
found = 1;
- }
- if (szHandle) { free(szHandle); }
+
+ if (szHandle) free(szHandle);
- if (found) { break; }
- hContact = db_find_next(hContact);
+ if (found) return hContact;
}
- return hContact;
+ return NULL;
}
#pragma warning (default: 4312)