diff --git "a/win32ss/user/ntuser/winpos.c" "b/win32ss/user/ntuser/winpos.c" index c0251ccc6a5..09b5de559de 100644 --- "a/win32ss/user/ntuser/winpos.c" +++ "b/win32ss/user/ntuser/winpos.c" @@ -2101,7 +2101,13 @@ co_WinPosSetWindowPos( /* We need to redraw what wasn't visible before or force a redraw */ if ((WinPos.flags & (SWP_FRAMECHANGED | SWP_SHOWWINDOW)) || - (((WinPos.flags & SWP_AGG_NOGEOMETRYCHANGE) != SWP_AGG_NOGEOMETRYCHANGE) && VisAfter != NULL)) + ((((WinPos.flags & SWP_AGG_NOGEOMETRYCHANGE) != SWP_AGG_NOGEOMETRYCHANGE) || + /* These next two tests fix CORE-18817. The first test fixes + * the search edit box and the second one fixes the combo box */ + ((Window->style & ES_AUTOHSCROLL) == ES_AUTOHSCROLL) || + ((Window->style & (CBS_HASSTRINGS | CBS_DROPDOWN | CBS_SIMPLE)) == + (CBS_HASSTRINGS | CBS_DROPDOWN | CBS_SIMPLE))) + && VisAfter != NULL)) { PREGION DirtyRgn = IntSysCreateRectpRgn(0, 0, 0, 0); if (DirtyRgn)