Hi,

the patch-cache of the property tree is not designed for node-deleting. 
But the multiplayer code deletes nodes deletes nodes very often. If you 
access such nodes by name, which is necessary to acces multiplayer-nodes 
(you can not store a pointer, tho node could be deleted meanwhile), you 
often get a pointer to a already deleted node. As a result, aerotowing 
often fails, if one player was removed from the multiplayer list for a 
short time. As an ugly fix, you can switch off the path cache and 
aerotow works as expected. As a solution I think of a vector of path 
caches at every node, which stores all path caches, if they are pointing 
to this node. If a node is removed, all linked path caches get this 
information and the link can be deleted. This must be done for all 
child-nodes, too. (one question: which member of SGPropertyNode is 
called if a node is removed from the tree?)

Maik

-------------------------------------------------------------------------
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