1
0
Fork 0
No description
Find a file
Florent Rougon eefa9a75f9 Fix crash in AI code when buggy groundnet declares pushback hold point on runway
Some buggy *.groundnet.xml files (as KSEA currently on TS) define the
pushback hold point for some parking positions as a node on a runway.
In this case, this the pushback hold point for parking
'North_Cargo_Ramp', defined as node 5344 in
Airports/K/S/E/KSEA.groundnet.xml, which is defined twice (second error),
first as:

<node index="5344" lat="N47 27.774559" lon="W122 18.465257" isOnRunway="1" holdPointType="PushBack"  />

and then as:

<node index="5344" lat="N47 27.725747" lon="W122 18.159649" isOnRunway="1" holdPointType="PushBack"  />

(due to code in flightgear/src/Airports/dynamicloader.cxx, it should be
the second one that wins, which is not on a runway but on apron in the
north cargo area)

As a consequence, when this gate is selected for an AI aircraft, the
pushback route has only one node (since the pushback hold point is then
the closest point to itself supposedly on runway!), and the
corresponding FGTaxiRoute instance has an empty 'routes' member
variable, which FGTaxiRoute::next() doesn't handle gracefully
(segfault).

It may be that an additional check/change could be desirable in
FGTaxiRoute::next() in such a case (one node and obviously no route in
the FGTaxiRoute instance), however I'm not sure how Durk wants this case
to be handled, since FGTaxiRoute::next() seems to iterate on nodes.

This fixes the bug reported at:

  https://forum.flightgear.org/viewtopic.php?p=308397#p308397 and
  https://sourceforge.net/p/flightgear/mailman/message/35776552/

Thanks to yanfiz and wkitty42 for the report, and to gooneybird for
inspecting the groundnet file.
2017-04-14 12:25:00 +02:00
3rdparty Test helper CMake macro. 2017-03-26 12:15:29 +01:00
CMakeModules Enable SSE and SSE2 by default 2016-12-16 10:50:24 +01:00
docs-mini Bugfix: remove the (totally broken) skyblend option 2013-12-19 14:53:39 +00:00
examples/netfdm Add an example implementation for the NetFDM structure. 2004-04-27 08:55:04 +00:00
icons Force 32 bits depth on .ico - only for Windows 2013-11-14 21:24:56 +01:00
man Remove unused --control option 2014-06-19 14:28:14 +02:00
package Update .desktop files to show the launcher 2017-01-27 16:09:19 +00:00
scripts Switch to using argparse in terrasync.py, which is actually maintained, and fix a couple of errors. 2016-12-28 08:32:55 -06:00
src Fix crash in AI code when buggy groundnet declares pushback hold point on runway 2017-04-14 12:25:00 +02:00
tests Rename fatalMessageBox() to fatalMessageBoxWithoutExit(), add exiting variant 2017-04-10 02:29:48 +02:00
utils Add the vendor tag 2017-03-30 15:56:15 +02:00
.gitignore Add dot-files to gitignore. 2012-07-17 19:19:55 +02:00
AUTHORS Fix my mailing address by replacing it with my web page. 2004-11-19 22:10:41 +00:00
ChangeLog Updated ... 2001-06-18 22:25:59 +00:00
CMakeLists.txt QML-driven settings UI. 2017-04-10 14:38:57 +01:00
COPYING Fix minor compiler and checker warnings. 2011-12-19 21:35:50 +01:00
INSTALL Add INSTALL file, split MSVC instructions from README.cmake 2012-06-08 13:20:39 +02:00
NEWS Update the NEWS file to reflect v2.0.0 changes. 2010-02-25 23:22:47 +01:00
README README typo 2007-07-24 05:35:31 +00:00
README.cmake Use CMAKE_INSTALL_BINDIR 2016-07-09 18:52:58 -04:00
README.msvc Add INSTALL file, split MSVC instructions from README.cmake 2012-06-08 13:20:39 +02:00
README.OpenAL KIll off ALUT now it's gone from SimGear 2012-08-22 00:10:00 +01:00
README.OSG Update README.OSG 2012-06-26 23:04:44 +02:00
README.plib Minor documentation update. 2007-11-18 14:22:40 +00:00
README.SimGear Documentation fixes: Updated the contents of README.plib and README.OpenAL. 2007-09-01 10:06:56 +00:00
Thanks Old address abandoned. 2015-08-26 08:05:30 -07:00
version new version: 2017.2.0 2017-02-20 18:52:13 +01:00

Welcome to the FlightGear Flight Simulator project.
===================================================

The primary web page for this project is: http://www.flightgear.org

For basic installation instructions see the "INSTALL" file.

Before you can run FlightGear you will also need to download and
install the "base" package which is a collection of textures, sounds,
sample scenery, and other data files needed by the sim.

For additional install help for specific platforms please browse the
"docs-mini/" subdirectory.

More complete documentation is available from our web page as a
separate distribution.

Please take a look at the "Thanks" file for a list of people who have
contributed to this project.  If you have contributed something but
don't find your name in this file.  Please send a polite reminder to
http://www.flightgear.org/~curt

For a summary of changes/additions by version see the "NEWS" file.

This project is GPL'd.  For complete details on our licensing please
see the "COPYING" file.

For information on available mailing lists, mailing list archives, and
other available source code and documenation, please visit our web
site.

FlightGear is a product of the collaboration of large international
group of volunteers.  FlightGear is a work in progress.  FlightGear
comes with no warrantee.  We hope you enjoy FlightGear and/or find it
of some value!