comctl32: header: Make sure no message is sent between PrepareCallbackItems/FreeCallbackItems.
diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c
index 9e37759..fcd2839 100644
--- a/dlls/comctl32/header.c
+++ b/dlls/comctl32/header.c
@@ -247,7 +247,6 @@
if (r.right - r.left == 0)
return phdi->rect.right;
- HEADER_PrepareCallbackItems(hwnd, iItem, HDI_TEXT|HDI_IMAGE);
if (theme != NULL) {
int state = (phdi->bDown) ? HIS_PRESSED :
(bHotTrack ? HIS_HOT : HIS_NORMAL);
@@ -319,6 +318,7 @@
cw, tw, iw, bw;
BITMAP bmp;
+ HEADER_PrepareCallbackItems(hwnd, iItem, HDI_TEXT|HDI_IMAGE);
cw = tw = iw = bw = 0;
rw = r.right - r.left;
rh = r.bottom - r.top;
@@ -434,9 +434,9 @@
if (oldBkMode != TRANSPARENT)
SetBkMode(hdc, oldBkMode);
}
+ HEADER_FreeCallbackItems(phdi);
}/*Ownerdrawn*/
- HEADER_FreeCallbackItems(phdi);
return phdi->rect.right;
}