https://bugs.winehq.org/show_bug.cgi?id=52465
Bug ID: 52465 Summary: Toolbar: Wrong TB_GETBUTTON message processing, returns (-1) instead of separator width in TBBUTTON structure Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: comctl32 Assignee: wine-bugs@winehq.org Reporter: yal@csoftcom.com Distribution: ---
From MSDN documents about TB_GETBUTTON : If the button is a separator, that is,
if fsStyle is set to BTNS_SEP, iBitmap determines the width of the separator, in pixels.
So, this code needs to change: /wine/dlls/comctl32/toolbar.c:3373
static LRESULT TOOLBAR_GetButton (const TOOLBAR_INFO *infoPtr, INT nIndex, TBBUTTON *lpTbb) { ---------------------------<cut>------------------------ /*From MSDN documents: If the button is a separator, that is, if fsStyle is set to BTNS_SEP, iBitmap determines the width of the separator, in pixels*/ lpTbb->iBitmap = (btnPtr->fsStyle & BTNS_SEP) ? SEPARATOR_WIDTH : btnPtr->iBitmap;
---------------------------<cut>------------------------