diff options
author | George Hazan <george.hazan@gmail.com> | 2013-04-09 20:03:46 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2013-04-09 20:03:46 +0000 |
commit | bcb27264ba737778e5d3edad36088bacf74f0236 (patch) | |
tree | fd1f57744dd380b7babe312a0ab5dc60b48854f2 /plugins/Variables/src/parse_miranda.cpp | |
parent | 940231dc5a484b03a278900e1880aa083472b601 (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/Variables/src/parse_miranda.cpp')
-rw-r--r-- | plugins/Variables/src/parse_miranda.cpp | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/plugins/Variables/src/parse_miranda.cpp b/plugins/Variables/src/parse_miranda.cpp index 6d14bf7cb3..c686037325 100644 --- a/plugins/Variables/src/parse_miranda.cpp +++ b/plugins/Variables/src/parse_miranda.cpp @@ -546,14 +546,13 @@ static HANDLE findDbEvent(HANDLE hContact, HANDLE hDbEvent, int flags) hDbEvent = db_event_prev(hDbEvent);
}
else {
- HANDLE hMatchEvent, hSearchEvent, hSearchContact;
+ HANDLE hMatchEvent, hSearchEvent;
DWORD matchTimestamp, priorTimestamp;
- hMatchEvent = hSearchEvent = hSearchContact = NULL;
+ hMatchEvent = hSearchEvent = NULL;
matchTimestamp = priorTimestamp = 0;
if (flags & DBE_FIRST) {
- hSearchContact = db_find_first();
- do {
+ for (HANDLE hSearchContact = db_find_first(); hSearchContact; hSearchContact = db_find_next(hSearchContact)) {
hSearchEvent = findDbEvent(hSearchContact, NULL, flags);
dbe.cbBlob = 0;
if (!db_event_get(hSearchEvent, &dbe)) {
@@ -562,13 +561,11 @@ static HANDLE findDbEvent(HANDLE hContact, HANDLE hDbEvent, int flags) matchTimestamp = dbe.timestamp;
}
}
- hSearchContact = db_find_next(hSearchContact);
- } while (hSearchContact);
+ }
hDbEvent = hMatchEvent;
}
- else if (flags&DBE_LAST) {
- hSearchContact = db_find_first();
- do {
+ else if (flags & DBE_LAST) {
+ for (HANDLE hSearchContact = db_find_first(); hSearchContact; hSearchContact = db_find_next(hSearchContact)) {
hSearchEvent = findDbEvent(hSearchContact, NULL, flags);
dbe.cbBlob = 0;
if (!db_event_get(hSearchEvent, &dbe)) {
@@ -577,16 +574,14 @@ static HANDLE findDbEvent(HANDLE hContact, HANDLE hDbEvent, int flags) matchTimestamp = dbe.timestamp;
}
}
- hSearchContact = db_find_next(hSearchContact);
- } while (hSearchContact);
+ }
hDbEvent = hMatchEvent;
}
- else if (flags&DBE_NEXT) {
+ else if (flags & DBE_NEXT) {
dbe.cbBlob = 0;
if (!db_event_get(hDbEvent, &dbe)) {
priorTimestamp = dbe.timestamp;
- hSearchContact = db_find_first();
- do {
+ for (HANDLE hSearchContact = db_find_first(); hSearchContact; hSearchContact = db_find_next(hSearchContact)) {
hSearchEvent = findDbEvent(hSearchContact, hDbEvent, flags);
dbe.cbBlob = 0;
if (!db_event_get(hSearchEvent, &dbe)) {
@@ -595,16 +590,14 @@ static HANDLE findDbEvent(HANDLE hContact, HANDLE hDbEvent, int flags) matchTimestamp = dbe.timestamp;
}
}
- hSearchContact = db_find_next(hSearchContact);
- } while (hSearchContact);
+ }
hDbEvent = hMatchEvent;
}
}
- else if (flags&DBE_PREV) {
+ else if (flags & DBE_PREV) {
if (!db_event_get(hDbEvent, &dbe)) {
priorTimestamp = dbe.timestamp;
- hSearchContact = db_find_first();
- do {
+ for (HANDLE hSearchContact = db_find_first(); hSearchContact; hSearchContact = db_find_next(hSearchContact)) {
hSearchEvent = findDbEvent(hSearchContact, hDbEvent, flags);
dbe.cbBlob = 0;
if (!db_event_get(hSearchEvent, &dbe)) {
@@ -613,8 +606,7 @@ static HANDLE findDbEvent(HANDLE hContact, HANDLE hDbEvent, int flags) matchTimestamp = dbe.timestamp;
}
}
- hSearchContact = db_find_next(hSearchContact);
- } while (hSearchContact);
+ }
hDbEvent = hMatchEvent;
}
}
|