In STATUSBAR_GetTipText{a,W, always put a terminating '\0' in the
buffer. Pass a buffer of sufficient size to TTM_GETTEXTA.
This commit is contained in:
parent
ba3c18df69
commit
72828e0080
|
@ -457,18 +457,22 @@ static LRESULT
|
||||||
STATUSBAR_GetTipTextA (HWND hwnd, WPARAM wParam, LPARAM lParam)
|
STATUSBAR_GetTipTextA (HWND hwnd, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
STATUSWINDOWINFO *infoPtr = STATUSBAR_GetInfoPtr (hwnd);
|
STATUSWINDOWINFO *infoPtr = STATUSBAR_GetInfoPtr (hwnd);
|
||||||
|
LPSTR tip = (LPSTR)lParam;
|
||||||
|
|
||||||
if (infoPtr->hwndToolTip) {
|
if (tip) {
|
||||||
TTTOOLINFOA ti;
|
CHAR buf[INFOTIPSIZE];
|
||||||
ti.cbSize = sizeof(TTTOOLINFOA);
|
buf[0]='\0';
|
||||||
ti.hwnd = hwnd;
|
|
||||||
ti.uId = LOWORD(wParam);
|
|
||||||
SendMessageA (infoPtr->hwndToolTip, TTM_GETTEXTA, 0, (LPARAM)&ti);
|
|
||||||
|
|
||||||
if (ti.lpszText)
|
if (infoPtr->hwndToolTip) {
|
||||||
lstrcpynA ((LPSTR)lParam, ti.lpszText, HIWORD(wParam));
|
TTTOOLINFOA ti;
|
||||||
|
ti.cbSize = sizeof(TTTOOLINFOA);
|
||||||
|
ti.hwnd = hwnd;
|
||||||
|
ti.uId = LOWORD(wParam);
|
||||||
|
ti.lpszText = buf;
|
||||||
|
SendMessageA(infoPtr->hwndToolTip, TTM_GETTEXTA, 0, (LPARAM)&ti);
|
||||||
|
}
|
||||||
|
lstrcpynA(tip, buf, HIWORD(wParam));
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -477,16 +481,21 @@ static LRESULT
|
||||||
STATUSBAR_GetTipTextW (HWND hwnd, WPARAM wParam, LPARAM lParam)
|
STATUSBAR_GetTipTextW (HWND hwnd, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
STATUSWINDOWINFO *infoPtr = STATUSBAR_GetInfoPtr (hwnd);
|
STATUSWINDOWINFO *infoPtr = STATUSBAR_GetInfoPtr (hwnd);
|
||||||
|
LPWSTR tip = (LPWSTR)lParam;
|
||||||
|
|
||||||
if (infoPtr->hwndToolTip) {
|
if (tip) {
|
||||||
TTTOOLINFOW ti;
|
WCHAR buf[INFOTIPSIZE];
|
||||||
ti.cbSize = sizeof(TTTOOLINFOW);
|
buf[0]=0;
|
||||||
ti.hwnd = hwnd;
|
|
||||||
ti.uId = LOWORD(wParam);
|
|
||||||
SendMessageW (infoPtr->hwndToolTip, TTM_GETTEXTW, 0, (LPARAM)&ti);
|
|
||||||
|
|
||||||
if (ti.lpszText)
|
if (infoPtr->hwndToolTip) {
|
||||||
lstrcpynW ((LPWSTR)lParam, ti.lpszText, HIWORD(wParam));
|
TTTOOLINFOW ti;
|
||||||
|
ti.cbSize = sizeof(TTTOOLINFOW);
|
||||||
|
ti.hwnd = hwnd;
|
||||||
|
ti.uId = LOWORD(wParam);
|
||||||
|
ti.lpszText = buf;
|
||||||
|
SendMessageW(infoPtr->hwndToolTip, TTM_GETTEXTW, 0, (LPARAM)&ti);
|
||||||
|
}
|
||||||
|
lstrcpynW(tip, buf, HIWORD(wParam));
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue