comparison 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
comparison
equal deleted inserted replaced
1424:36d0e26a5dea 1425:1628bf383893
236 236
237 /* Internal function to queue a window redraw */ 237 /* Internal function to queue a window redraw */
238 void _dw_redraw(HWND window, int skip) 238 void _dw_redraw(HWND window, int skip)
239 { 239 {
240 static HWND lastwindow = 0; 240 static HWND lastwindow = 0;
241 HWND redraw = lastwindow;
241 242
242 if(skip && !window) 243 if(skip && !window)
243 return; 244 return;
244 245
245 if(lastwindow != window && lastwindow) 246 lastwindow = window;
247 if(redraw != lastwindow && redraw)
246 { 248 {
247 dw_window_redraw(lastwindow); 249 dw_window_redraw(redraw);
248 } 250 }
249 lastwindow = window;
250 } 251 }
251 252
252 /* Find the desktop window handle */ 253 /* Find the desktop window handle */
253 HWND _toplevel_window(HWND handle) 254 HWND _toplevel_window(HWND handle)
254 { 255 {