On Friday 26 January 2007 09:02, Frederic Bouvier wrote:
> Hi Maik,
>
> Selon Maik Justus :
> > Hi,
> > the same thing with _condition.
> >
> > It's systematically done wrong.
> >
> > _textureData could be done correctly :-)
>
> _condition, _effectTexture and _textureData are not SGShaderAnimation
> members in the OSG code.
>
> In the PLIB branch, _contition is not shared but initialized with new in
> sgReadCondition, so unless there is something I am missing, I think
> _condition must be deleted just like in the other animation classes where
> it is actually missing ( except in shadow and select ).
>
> for _effectTexture, the pointer should be replaced by
> ssgSharedPtr<ssgTexture> and the delete removed.
>
> I am committing a fix right now.

Hi Fred,

Reports from IRC say this is fixed in plib, but I can still get a 100% 
reliable crash with OSG build.

Enter MP server using Harrier.  Get someone to join/leave/join with the dhc2F.  
Immediate segfault on the second join.

Below is my earlier mail with trace etc.

Nick




> On Fri, 5 Jan 2007, Maik Justus wrote:
> > Hello,
> >
> > sometimes I get a segfault in function
> > SGShaderAnimation::~SGShaderAnimation(), file
> > simgear/scene/model/shadanim.cxx.
>
> I never get a SIGSEGV from there, but rather a SIGABORT due to a failed
> assert. (This with plib, nota bene) And from the gang-debugging session we
> had last night on IRC+MP we now know how to replicate it. (although I'm not
> sure if there was a consesus on exactly how, but something like this: at
> least two models using the chrome shader, one leaves mp and then fgfs
> crashes for any miserable one watching them leave. Other's said it was
> provoked by a join-leave-rejoin cycle)

Here is my gdb output.  I can get this crash everytime with the 
join/leave/join scenerio.

Join with the harrier and sit on the deck.  get someone (Maik here) to join 
with the dhc2.  Fly a little (just take off will do).  Get Maik leave the 
server, and rejoin -> *crash* for me.

Interesting thing is, you do not see Maik leave the server - but re 'joins 
twice' even though he has left.

(gdb) list produces nonsense, but I include it at the end anyway.

Nick



Server chat:

Chat [mpserve] Maik is now online, using

Chat [mpserve] Aircraft/dhc2/Models/dhc2wheels.xml

Using global material animation that can no longer work
Using global material animation that can no longer work
Using global material animation that can no longer work
Using global material animation that can no longer work
Chat [mpserve] Maik is now online, using

Chat [mpserve] Aircraft/dhc2/Models/dhc2wheels.xml

Using global material animation that can no longer work
Using global material animation that can no longer work
Using global material animation that can no longer work
Using global material animation that can no longer work

Program received signal SIGSEGV, Segmentation fault.
0x36ff1f36 in ?? ()




Backtrace:

(gdb) bt
#0  0x36ff1f36 in ?? ()
#1  0x404409e6 in osg::StateSet::setTextureAttributeAndModes () 
from /usr/local/lib/libosg.so
#2  0x085230c9 in create_specular_highlights (node=0x11bc1558) at 
shadanim.cxx:160
#3  0x085233f6 in SGShaderAnimation::createAnimationGroup (this=0xbfd16ea0, 
[EMAIL PROTECTED]) at shadanim.cxx:198
#4  0x0851043d in SGAnimation::installInGroup (this=0xbfd16ea0, 
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED])
    at animation.cxx:606
#5  0x085102cf in SGAnimation::apply (this=0xbfd16ea0, [EMAIL PROTECTED]) at 
animation.cxx:583
#6  0x403c9def in osg::Group::accept () from /usr/local/lib/libosg.so
#7  0x403c84e4 in osg::Group::traverse () from /usr/local/lib/libosg.so
#8  0x08069704 in osg::NodeVisitor::traverse (this=0xbfd16ea0, 
[EMAIL PROTECTED]) at NodeVisitor:180
#9  0x0851021f in SGAnimation::apply (this=0xbfd16ea0, [EMAIL PROTECTED]) at 
animation.cxx:575
#10 0x080695f1 in osg::NodeVisitor::apply (this=0xbfd16ea0, [EMAIL PROTECTED]) 
at NodeVisitor:247
#11 0x08069955 in osg::NodeVisitor::apply (this=0xbfd16ea0, [EMAIL PROTECTED]) 
at NodeVisitor:250
#12 0x403df74f in osg::MatrixTransform::accept () 
from /usr/local/lib/libosg.so
#13 0x0851015c in SGAnimation::apply (this=0xbfd16ea0, node=0x1202b4e0) at 
animation.cxx:542
#14 0x0850fd83 in SGAnimation::animate (node=0x1202b4e0, configNode=0xf015ab0, 
modelRoot=0x1218e600) at animation.cxx:510
#15 0x0850461a in sgLoad3DModel ([EMAIL PROTECTED], [EMAIL PROTECTED], 
prop_root=0x1218e600, sim_time_sec=318.66666666666242,
    load_panel=0, data=0x0, [EMAIL PROTECTED]) at model.cxx:547
#16 0x0846bfd9 in FGAIBase::load3DModel (this=0x11e38268, [EMAIL PROTECTED], 
[EMAIL PROTECTED], prop_root=0x1218e600,
    sim_time_sec=318.66666666666242) at AIBase.cxx:175
#17 0x0846bd94 in FGAIBase::init (this=0x11e38268, search_in_AI_path=true) at 
AIBase.cxx:143
#18 0x0847322a in FGAIMultiplayer::init (this=0x11e38268, 
search_in_AI_path=true) at AIMultiplayer.cxx:60
#19 0x08468ec3 in FGAIManager::attach (this=0xb271810, model={_ptr = 
0x11e38268}) at AIManager.cxx:157
#20 0x084619e4 in FGMultiplayMgr::addMultiplayer (this=0xb8d9cf0, 
[EMAIL PROTECTED], [EMAIL PROTECTED])
    at multiplaymgr.cxx:758
#21 0x08461550 in FGMultiplayMgr::ProcessPosMsg (this=0xb8d9cf0, 
Msg=0xbfd17820 "SFGF\001", [EMAIL PROTECTED], len=536,
    stamp=1169672780) at multiplaymgr.cxx:685
#22 0x08460b60 in FGMultiplayMgr::Update (this=0xb8d9cf0) at 
multiplaymgr.cxx:518
#23 0x0805d2a5 in fgMainLoop () at main.cxx:454
#24 0x080995c8 in fgOSMainLoop () at fg_os_sdl.cxx:247
#25 0x0805f638 in fgMainInit (argc=8, argv=0xbfd180e4) at main.cxx:1029
#26 0x0805bc76 in main (argc=8, argv=0xbfd180e4) at bootstrap.cxx:204



(gdb) list 
142         set_fpc_csr(f.fc_word);
143     }
144     #endif
145
146     int _bootstrap_OSInit;
147
148     // Main entry point; catch any exceptions that have made it this far.
149     int main ( int argc, char **argv ) {
150
151         _bootstrap_OSInit = 0;

-------------------------------------------------------------------------
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
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to