Mercurial > dwindows
diff os2/dw.c @ 1425:1628bf383893
Changes to _dw_redraw() to prevent infinite recursion on OS/2, Win and Mac.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sat, 03 Dec 2011 04:40:35 +0000 |
parents | 36d0e26a5dea |
children | 7826031d48ce |
line wrap: on
line diff
--- a/os2/dw.c Sat Dec 03 03:40:48 2011 +0000 +++ b/os2/dw.c Sat Dec 03 04:40:35 2011 +0000 @@ -238,15 +238,16 @@ void _dw_redraw(HWND window, int skip) { static HWND lastwindow = 0; + HWND redraw = lastwindow; if(skip && !window) - return; - - if(lastwindow != window && lastwindow) + return; + + lastwindow = window; + if(redraw != lastwindow && redraw) { - dw_window_redraw(lastwindow); + dw_window_redraw(redraw); } - lastwindow = window; } /* Find the desktop window handle */