I seem to be very lucky this week, I ran into another very nasty bug. :(

I narrowed it down to this section of code in my application:

   OSG::NodePtr model_xform = getModelXform(modelId);
   OSG_ASSERT(model_xform != OSG::NullFC && "Model xform is NULL");
   OSG::commitChanges();

   OSG_ASSERT(mRootNode.node()->findChild(model_xform) != -1);
   mRootNode.node()->subChild(model_xform);

   OSG::commitChanges();   // loop forever

model_xform is a transform node with a textured model under it made up 
of a screen size LOD and several sub-trees of of material groups and 
geometries (data loaded from a VRML model).

When I call the final commitChanges, OpenSG becomes stuck in an infinite 
loop.  I added some debug code and found that the 
ContainerChangeEntry::commitChanges keeps getting called over and over 
for the same field container.  In all cases it was looping over and over 
on an Image container.  With a bit of investigation and some remote 
support from Dirk, we found that if I commented out the contents of 
Image::changed then the code would not loop forever.  So for now I have 
just removed that code and will keep running without it until I can get 
some advice from someone on what may be causing this problem. 

Note: I have not been able to replicate this is a simple test case so I 
don't have any code to show you.  The code I am using right now should 
be doing all loading from a single thread and is only using a single 
aspect.  All file data is from a VRML file that was converted into an 
.osb file as part of a preprocessing step.

I know that we are pushing OpenSG 2.0 in some ways it has not bee used 
before, and I am very interested in helping to find this bug and any 
other related bugs. Please let me know if there is anything I can do to 
assist.

Thanks,
Allen


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Opensg-core mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-core

Reply via email to