This patch seems to have fixed the Splash loop on my XP
system with SVN 2290.
A statement in the wxWidgets book states that the paint
routine should always allocated a DC even if it doesn't do the paint.
This avoids a loop with the lib constantly calling the paint
routine.
I moved the DC allocation to the top of the routine so it was
allocated on every paint call and the hang went away.
Patch submitted.
Index: src/src/splashscreen.cpp
===================================================================
--- src/src/splashscreen.cpp (revision 2290)
+++ src/src/splashscreen.cpp (working copy)
@@ -22,12 +22,16 @@
void cbSplashScreen::OnPaint(wxPaintEvent &)
{
+ // an obscure statement in the wxWidgets book says to
+ // allocate the DC even if you don't paint to avoid
+ // a paint loop. //pecan 2006/04/3
+ wxPaintDC paint_dc(this); //pecan 2006/04/3
if (m_painted)
{
return;
}
- wxPaintDC paint_dc(this);
+ //-wxPaintDC paint_dc(this);
DoPaint(paint_dc);
m_painted = true; // paint once
}
thanks
pecan