summaryrefslogtreecommitdiff
path: root/plugins/ListeningTo
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/ListeningTo')
-rw-r--r--plugins/ListeningTo/src/listeningto.cpp5
-rw-r--r--plugins/ListeningTo/src/players/mradio.cpp29
2 files changed, 7 insertions, 27 deletions
diff --git a/plugins/ListeningTo/src/listeningto.cpp b/plugins/ListeningTo/src/listeningto.cpp
index 62ecd7c48e..2f9933ca82 100644
--- a/plugins/ListeningTo/src/listeningto.cpp
+++ b/plugins/ListeningTo/src/listeningto.cpp
@@ -300,8 +300,7 @@ int ModulesLoaded(WPARAM wParam, LPARAM lParam)
// Extra icon support
hExtraIcon = ExtraIcon_Register(MODULE_NAME, LPGEN("Listening to music"), "listening_to_icon");
- HANDLE hContact = db_find_first();
- while (hContact != NULL) {
+ for (HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) {
char *proto = GetContactProto(hContact);
if (proto != NULL) {
DBVARIANT dbv;
@@ -312,8 +311,6 @@ int ModulesLoaded(WPARAM wParam, LPARAM lParam)
db_free(&dbv);
}
}
-
- hContact = db_find_next(hContact);
}
// Add main menu item
diff --git a/plugins/ListeningTo/src/players/mradio.cpp b/plugins/ListeningTo/src/players/mradio.cpp
index d9f81fecb8..d8e23508a3 100644
--- a/plugins/ListeningTo/src/players/mradio.cpp
+++ b/plugins/ListeningTo/src/players/mradio.cpp
@@ -34,30 +34,13 @@ void MRadio::EnableDisable()
int MRadio::GetData()
{
- HANDLE hContact;
+ for (HANDLE hContact = db_find_first("mRadio"); hContact; hContact = db_find_next(hContact, "mRadio")) {
+ WORD status = db_get_w(hContact, "mRadio", "Status", ID_STATUS_OFFLINE);
+ if (status != ID_STATUS_ONLINE)
+ continue;
- hContact = db_find_first();
- while (hContact != NULL)
- {
- char *proto = GetContactProto(hContact);
- if (proto)
- {
- if (strcmp("mRadio", proto) == 0)
- {
- WORD status = db_get_w(hContact, proto, "Status", ID_STATUS_OFFLINE);
- if (status == ID_STATUS_ONLINE)
- break;
- }
- }
-
- hContact = db_find_next(hContact);
- }
-
- if (hContact)
- {
- DBVARIANT dbv = {0};
- if (!db_get_s(hContact, "mRadio", "Nick", &dbv))
- {
+ DBVARIANT dbv;
+ if (!db_get_s(hContact, "mRadio", "Nick", &dbv)) {
listening_info.cbSize = sizeof(listening_info);
listening_info.dwFlags = LTI_TCHAR;
listening_info.ptszArtist = mir_tstrdup(_T("Radio"));