Module: wine Branch: refs/heads/master Commit: b8da6f27515140810f3c84bd971a365c581be228 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=b8da6f27515140810f3c84bd...
Author: Mikołaj Zalewski mikolaj@zalewski.pl Date: Mon May 22 22:53:08 2006 +0200
comctl32: header: Don't try to draw items outside the clipping rect.
---
dlls/comctl32/header.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c index 6696e25..81a8b92 100644 --- a/dlls/comctl32/header.c +++ b/dlls/comctl32/header.c @@ -466,8 +466,10 @@ HEADER_Refresh (HWND hwnd, HDC hdc)
x = rect.left; for (i = 0; x <= rect.right && i < infoPtr->uNumItem; i++) { - x = HEADER_DrawItem (hwnd, hdc, HEADER_OrderToIndex(hwnd,i), - infoPtr->iHotItem == i); + int idx = HEADER_OrderToIndex(hwnd,i); + if (RectVisible(hdc, &infoPtr->items[idx].rect)) + HEADER_DrawItem (hwnd, hdc, idx, infoPtr->iHotItem == i); + x = infoPtr->items[idx].rect.right; }
if ((x <= rect.right) && (infoPtr->uNumItem > 0)) {