This should fix the problem with icon spacing being set to 65535 instead of default from system metrics. INT is 32bit not 16bit changelog: Index: listview.c =================================================================== RCS file: /home/wine/wine/dlls/comctl32/listview.c,v retrieving revision 1.343 diff -u -r1.343 listview.c --- listview.c 7 Mar 2003 20:35:30 -0000 1.343 +++ listview.c 14 Mar 2003 07:16:15 -0000 @@ -6485,7 +6534,7 @@ */ static DWORD LISTVIEW_SetIconSpacing(LISTVIEW_INFO *infoPtr, DWORD spacing) { - INT cy = HIWORD(spacing), cx = LOWORD(spacing); + signed short int cy = HIWORD(spacing), cx = LOWORD(spacing); DWORD oldspacing = MAKELONG(infoPtr->iconSpacing.cx, infoPtr->iconSpacing.cy); UINT uView = infoPtr->dwStyle & LVS_TYPEMASK;