Hi Aron,

On Wed, 2005-06-08 at 14:30 -0500, Aron Bierbaum wrote:
> I am fairly new to OpenSG, especially to RemoteAspects. I am getting the 
> following error when when trying to sync a remote aspect with another 
> machine. I am fairly sure that this stack trace is trying to set a 
> FieldContainer to NULL that is already invalid. My question is, what 
> could be causing this since the remote machine crashes but the sending 
> node does not. I could be completely off with this too.

did you solve this problem or is it still active? It's a little weird,
at this point it shouldn't be able to crash.

Could you add this little patch, and see if it triggers? (Note: I
haven't tried this patch yet, recompile still running, but it should be
safe.)

--- Source/System/FieldContainer/Impl/OSGFieldContainerFactoryImpl.inl
14 Mar 2003 17:23:56 -0000      1.4
+++ Source/System/FieldContainer/Impl/OSGFieldContainerFactoryImpl.inl
20 Jun 2005 17:41:56 -0000
@@ -132,6 +132,19 @@ void FieldContainerFactory::unregisterFi

     if(_pFieldContainerStore != NULL)
     {
+#ifdef OSG_DEBUG
+        if (pFieldContainer.getFieldContainerId() < 0 ||
+            pFieldContainer.getFieldContainerId() >=
+                    (*_pFieldContainerStore).size())
+        {
+            FWARNING(("FieldContainerFactory::unregisterFieldContainer:"
+                "id %d inconsistent with store size %d!\n",
+                pFieldContainer.getFieldContainerId(),
+                (*_pFieldContainerStore).size() ));
+        }
+        else
+#endif
+
         (*_pFieldContainerStore)[pFieldContainer.getFieldContainerId()] =
             NullFC;
     }

Yours

        Dirk


> Thanks,
> Aron
> 
>     OSGSystemD.dll!osg::FieldContainerPtrBase::setNull()  Line 411 + 
> 0x3    C++
>      OSGSystemD.dll!osg::FieldContainerPtr::operator=(const 
> osg::NullFieldContainerPtr & __formal={...})  Line 525    C++
>     
>  OSGSystemD.dll!osg::FieldContainerFactory::unregisterFieldContainer(const 
> osg::FieldContainerPtr & pFieldContainer={...})  Line 139    C++
>      OSGSystemD.dll!osg::FieldContainerPtrBase::deleteContainers()  Line 
> 87    C++
>      OSGSystemD.dll!osg::FieldContainerPtrBase::subRef()  Line 133    C++
>      OSGSystemD.dll!osg::subRefCP(const osg::FieldContainerPtrBase & 
> objectP={...})  Line 66    C++
>     
>  
> OSGSystemD.dll!osg::ClearSlot::operator()(osg::FCPtr<osg::AttachmentPtr,osg::StateChunk>
>  
> & slotPtr={...})  Line 69 + 0x9    C++
>      OSGSystemD.dll!std::transform(...)  Line 385 + 0x11    C++
>      OSGSystemD.dll!osg::State::clearChunks()  Line 433 + 0x3a    C++
>      OSGSystemD.dll!osg::ChunkMaterial::rebuildState()  Line 305    C++
>      OSGSystemD.dll!osg::Material::changed(unsigned __int64 
> whichField=18446744073709551615, unsigned int origin=1)  Line 161 + 
> 0xd    C++
>      OSGSystemD.dll!osg::ChunkMaterial::changed(unsigned __int64 
> whichField=18446744073709551615, unsigned int origin=1)  Line 134    C++
>      OSGSystemD.dll!osg::FieldContainerPtr::changed(unsigned __int64 
> whichField=18446744073709551615, unsigned int origin=1)  Line 552 + 
> 0x2d    C++
>      OSGSystemD.dll!osg::changedCP(const osg::FieldContainerPtr & 
> objectP={...}, unsigned __int64 whichField=18446744073709551615, 
> unsigned int origin=1)  Line 118    C++
>      OSGSystemD.dll!osg::RemoteAspect::receiveSync(osg::Connection & 
> connection={...}, bool applyToChangelist=false)  Line 392 + 0x1c    C++
>      RemoteAspect.exe!client_idle()  Line 350 + 0x16    C++
>      RemoteAspect.exe!display()  Line 375    C++
>      glut32.dll!01454ac9()     
>      glut32.dll!0145490f()     
>      RemoteAspect.exe!client_start(int argc=1, char * * 
> argv=0x003d2a58)  Line 340 + 0x8    C++
>      RemoteAspect.exe!main(int argc=1, char * * argv=0x003d2a58)  Line 
> 517 + 0xd    C++
>      RemoteAspect.exe!mainCRTStartup()  Line 400 + 0xe    C
>      kernel32.dll!7c816d4f()     
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by: NEC IT Guy Games.  How far can you shotput
> a projector? How fast can you ride your desk chair down the office luge track?
> If you want to score the big prize, get to know the little guy.  
> Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20
> _______________________________________________
> Opensg-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/opensg-users



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to