From Max Bandazian, "Lines 302-305 of WindowManager.cpp seem to have a parenthesizing error - the code is
if( (!win || win->getVisibilityMode() == Window::VM_PARTIAL) && !win->isPointerXYWithinVisible(x, y) ) continue; But it probably should be if (!win || (win->getVisibilityMode() == Window::VM_PARTIAL) && !win->isPointerXYWithinVisible(x, y))) continue; The effect of the bug is to segfault if a non-osgWidgets::Window node hasn't been excluded from picking via NodeMask."
This commit is contained in:
parent
5052432cc7
commit
5209b33c31
@ -299,10 +299,11 @@ bool WindowManager::pickAtXY(float x, float y, WidgetList& wl) {
|
||||
|
||||
// Make sure that our window is valid, and that our pick is within the
|
||||
// "visible area" of the Window.
|
||||
if(
|
||||
(!win || win->getVisibilityMode() == Window::VM_PARTIAL) &&
|
||||
!win->isPointerXYWithinVisible(x, y)
|
||||
) continue;
|
||||
if(!win ||
|
||||
(win->getVisibilityMode()==Window::VM_PARTIAL && !win->isPointerXYWithinVisible(x, y)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
// Set our activeWin, so that we know when we've got all the Widgets
|
||||
// that belong to it.
|
||||
|
Loading…
Reference in New Issue
Block a user