fixed re-entrant calls to X bug.

This commit is contained in:
crs 2002-06-26 12:44:52 +00:00
parent 1377882a9f
commit 6cc3b50d3b
2 changed files with 5 additions and 2 deletions

View File

@ -387,7 +387,10 @@ CXWindowsScreen::processEvent(XEvent* xevent)
} }
// let screen saver have a go // let screen saver have a go
m_screenSaver->processEvent(xevent); {
CLock lock(&m_mutex);
m_screenSaver->processEvent(xevent);
}
return false; return false;
} }

View File

@ -16,7 +16,7 @@ class CXWindowsScreenSaver : public IScreenSaver {
public: public:
// note -- the caller must ensure that Display* passed to c'tor isn't // note -- the caller must ensure that Display* passed to c'tor isn't
// being used in another call to Xlib when calling any method on this // being used in another call to Xlib when calling any method on this
// object (including during the c'tor and d'tor) except processEvent(). // object (including during the c'tor and d'tor).
CXWindowsScreenSaver(CXWindowsScreen*, Display*); CXWindowsScreenSaver(CXWindowsScreen*, Display*);
virtual ~CXWindowsScreenSaver(); virtual ~CXWindowsScreenSaver();