summaryrefslogtreecommitdiff
path: root/tipper/popwin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tipper/popwin.cpp')
-rw-r--r--tipper/popwin.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/tipper/popwin.cpp b/tipper/popwin.cpp
index fadbfe3..ccac277 100644
--- a/tipper/popwin.cpp
+++ b/tipper/popwin.cpp
@@ -97,9 +97,19 @@ LRESULT CALLBACK PopupWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPa
}
if(status >= ID_STATUS_OFFLINE && status <= ID_STATUS_IDLE) {
- char *status_msg = (char *)CallService(MS_AWAYMSG_GETSTATUSMSG, status, 0);
- if(status_msg) {
- TCHAR *swzText = a2t(status_msg);
+ TCHAR *swzText = 0;
+ char *status_msg = 0;
+ if(ServiceExists(MS_AWAY_GETPROTOSTATUSMESSAGET))
+ swzText = _tcsdup((TCHAR *)CallService(MS_AWAY_GETPROTOSTATUSMESSAGET, (LPARAM)status, (WPARAM)pwd->clcit.proto));
+ else if(ServiceExists(MS_AWAY_GETPROTOSTATUSMESSAGE))
+ status_msg = (char *)CallService(MS_AWAY_GETPROTOSTATUSMESSAGE, (LPARAM)status, (WPARAM)pwd->clcit.proto);
+ else
+ status_msg = (char *)CallService(MS_AWAYMSG_GETSTATUSMSG, status, 0);
+
+ if(status_msg)
+ swzText = a2t(status_msg);
+
+ if(swzText) {
StripBBCodesInPlace(swzText);
pwd->rows = (RowData *) realloc(pwd->rows, sizeof(RowData) * (pwd->row_count + 1));