]> git.mxchange.org Git - simgear.git/commit
Melchior FRANZ:
authorehofman <ehofman>
Sun, 19 Dec 2004 10:19:14 +0000 (10:19 +0000)
committerehofman <ehofman>
Sun, 19 Dec 2004 10:19:14 +0000 (10:19 +0000)
commit37ac409586f564db0e487f3d5b44b3a612d62438
tree6e644d4fb9eb572653b71937fe16b495eab82d84
parent7b24e94c66fd04c3f4b130c29aedf65145628fb3
Melchior FRANZ:

fgLoadFlight() loads a property file ("fgfs.sav") to a new property tree,
and then copies that over to the main tree. copyProperties() didn't know
how to handle type SGPropertyNode::ALIAS and hence threw an exception that
made fgfs abort.

The attached patch adds support for ALIAS to copyProperties(): aliased
nodes are created in the target tree if necessary, and then linked like in
the source tree. It seemed useful to add an optional argument to
props.[ch]xx/getType() that would indeed return the property type "ALIAS"
for aliased nodes, and not the type of the node that it refers to. The patch
also fixes a bug in writeNode() that caused extra lines after alias entries.

If there's resistance to the change to getType() (David?) I can easily use
isAlias(). This just makes copyProperties() a tad uglier, but I can live with
it. It's useful for scanning a tree, though, if an alias node can be treated
exactly like all other nodes, without automatic redirection.
simgear/props/props.cxx
simgear/props/props.hxx
simgear/props/props_io.cxx