Hi Jeremy,

Bug 1.  Impressive... Impressively daft keyboard/mouse wizzardary :-)

My guess is that the bug isn't actually related to
TrackballManipulator, it just happens to be the thing in the way when
things start falling apart.  In theory the bulk event handling should
all be done single threaded, there shouldn't be any race condition,
for instance the call to handle() should certainly be single threaded.

So.. this leaves me wondering if the GraphicsWindow event handling on
your platform is the source of the problem and something is being
tripped up due to the frantic event activity.

BTW what platform are you working on?

Another note, you won't find me chasing this bug, I have RSI so no
frantic activity on the mouse.  I'll get Martin to go mad at the
keyboard mouse though to see if we recreate the problem.

Item 2) The className() and libraryName() should be public, so I've
changed this in the GraphicsContext, GraphicsWindow and its
subclasses.   These changes shouldn't have too much of effect on the
world though, as you don't generally serialize GraphicsWindow objects.
This changes are now checked in.

Robert.

On 6/12/07, Jeremy L. Moles <[EMAIL PROTECTED]> wrote:
I did a lot of OSG fiddling over the weekend and came up with a few bugs
(1 of which is definitely a bug and 1 of which "might be"); I wanted to
try and get these in before 2.0 is released, but it may be too late.

1) I can crash any application that uses a Trackball Manipulator (as of
svn update about an hour ago) by pressing and releasing the left mouse
button _immediately_ followed by a spacebar press; this seems to be a
timing/race issue, as it only happens when you do the sequence quickly.
Sometimes it takes 5-10 seconds of "doing it", but it will eventually
happen. If all else fails, just go crazy pressing both and it'll
happen. :) I'll build a debug release of OSG sometime later today and
run it under valgrind to see exactly where it happens, but release
builds in valgrind say the crash occurs in handle(), which isn't very
helpful, as you can imagine...

2) GraphicsContext puts className(), libraryName(), etc. into a
protected namespace, but GraphicsWindowEmbedded doesn't override them.
Perhaps this is encouragement not to use this class? :) (I know the
general idea is to avoid it's use, so this might be on purpose...)

It's unlike me to report bugs without patches, but I've been trying to
learn about and get my head around picking this weekend, and haven't had
a chance to really investigate these things.

_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to