1
0
Fork 0
Commit graph

12266 commits

Author SHA1 Message Date
Torsten Dreyer
62d0d2ab06 event input system: be a little more helpful on errors 2015-11-02 11:42:30 +01:00
Erik Hofman
a0e31b5565 Sync. with JSBSim again 2015-10-30 10:10:01 +01:00
Torsten Dreyer
e324c89171 newnavradio: expose localizer crosstrack error 2015-10-08 10:18:14 +02:00
Florent Rougon
7198dec355 Use SGPath::realpath() on the value supplied for --aircraft-dir
* Before setting /sim/aircraft-dir from the --aircraft-dir option,
canonicalize its value with SGPath::realpath() as is already done in
FGGlobals::append_aircraft_path() for the paths given with --fg-aircraft
or via the FG_AIRCRAFT environment variable.

* This fixes a bug when --aircraft-dir is used, due to the fact that
fgValidatePath() canonicalizes its 'path' argument before matching it
against the allowed patterns, and therefore will not validate paths
under the directory specified with --aircraft-dir if this directory has
been given in a non-canonical form by the user (e.g., containing at
least one symlink component).

* This fix does not lower security: the path which is canonicalized has
been explicitely given by the user. This operation is already done for
all paths specified with --fg-aircraft or via the FG_AIRCRAFT
environment variable, via Options::initPaths() which calls
FGGlobals::append_aircraft_paths().

* To reproduce the bug, create a symlink (e.g., /tmp/aircrafts) to a
directory suitable for --fg-aircraft, then run:

  fgfs ... --fg-aircraft=/tmp/aircrafts \
           --aircraft-dir=/tmp/aircrafts/SenecaII --aircraft=SenecaII

This will trigger many failures such as:

  loadxml: reading '/tmp/aircrafts/SenecaII/Dialogs/registration.xml'
  denied (unauthorized directory - authorization no longer follows
  symlinks; to authorize reading additional directories, add them to
  --fg-aircraft)

(from do_load_xml_to_proptree() in flightgear/src/Main/fg_commands.cxx)

I have also tested this with the ec130b4 and the 777-200ER. Same
problem, same fix.
2015-10-06 21:54:50 +02:00
James Turner
b49dd70de9 Remove some debug noise 2015-09-27 23:13:18 -05:00
James Turner
980a98b176 Silence more Clang (Xcode 7) warnings 2015-09-27 20:40:34 -05:00
James Turner
5f0e347c60 Keep in sync with SimGear Package API 2015-09-27 19:44:39 -05:00
James Turner
43bcc85919 Correct handling of updating packages 2015-09-27 19:44:29 -05:00
James Turner
1e2460d9bf Disable mouse hover code for now. 2015-09-27 19:43:50 -05:00
Florent Rougon
1d34b96d49 Don't load resources for the current aircraft from several aircraft dirs
* If one has the same aircraft in several aircraft directories,
  FlightGear should not mix resources from the various aircraft
  directories. For instance, if one starts FG with:

    --fg-aircraft=/my/personal/dir:/path/to/fgaddon/Aircraft

  and one has in /my/personal/dir/ec130 a clone of the upstream
  developer repo, FlightGear should use either the upstream version from
  /my/personal/dir/ec130 or the FGAddon version from
  /path/to/fgaddon/Aircraft/ec130, but not some strange, untested hybrid
  of both.

* This commit makes sure that when the looked-up resource starts with
  Aircraft/<ac>, where <ac> is the current aircraft name [last component
  of aircraftDir = fgGetString("/sim/aircraft-dir")], then
  AircraftResourceProvider::resolve() doesn't search other aircraft
  directories if the resource isn't found under 'aircraftDir'.

* To reproduce the bug before this commit, you may add the following
  code (there is nothing specific about the SenecaII here, it's just the
  aircraft I used for testing):

    var file_path = resolvepath("Aircraft/SenecaII/flo-test");
    if (file_path != "")
      gui.popupTip("flo-test found", 2);
    else
      gui.popupTip("flo-test not found", 2);

  in a keyboard binding for the SenecaII (for instance; you may use the
  F11 binding that otherwise only prints a short message). You should
  add this to the SenecaII/SenecaII-base.xml file *that will be loaded
  by FlightGear*, let's say the one under /my/personal/dir in the
  example above (beware of the <path-cache> in autosave_X_Y.xml). Then,
  by creating or removing a file named "flo-test" in the SenecaII
  subdirectory of other aircraft dirs (for instance,
  /path/to/fgaddon/Aircraft in the example above), you can see that the
  behavior of the loaded aircraft is influenced by the contents of
  unrelated versions of the same aircraft that might be present in other
  aircraft dirs (e.g., loaded /my/personal/dir/SenecaII influenced by
  /path/to/fgaddon/Aircraft/SenecaII).

* Aircrafts loading resources using paths relative to the current
  aircraft directory (e.g., with 'resolvepath("flo-test")') are not
  affected by this kind of problem, because this scheme is handled by
  CurrentAircraftDirProvider, which does not exhibit this bug.
2015-09-26 09:45:33 +02:00
Rebecca N. Palmer
a64cf82296 Use +=, not (5.5+ only) append, for concatenating QVectors 2015-09-21 22:12:24 +01:00
James Turner
18a898f5f9 Lots of work on aircraft package support 2015-09-20 19:46:35 -05:00
James Turner
c2cbb36d16 Work around a strange link failure on Mac
- Xcode 7 seems to dislike this code as was, adjusted version
links fine. Very odd.
2015-09-20 19:45:03 -05:00
James Turner
53b41d0284 Drop explicit SDK setting on Mac 2015-09-20 19:44:35 -05:00
Martin Spott
f4fa68754b Old address abandoned. 2015-08-26 08:05:30 -07:00
Rebecca N. Palmer
79f1da6bef Nasal: use SG_LOG for security error messages to avoid truncation
These are often too long for naRuntimeError's 128-char limit:
http://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/55B55856.2030709%40worldwideweb2.nl/#msg34319969
2015-08-14 21:37:28 +01:00
bcoconni
7bcbe8e802 Fixed the pilot acceleration for consistency with the accelerometer computation 2015-08-09 20:00:08 +02:00
bcoconni
adb926eefc Fixed the accelerometer that now reports correctly 0g in orbit and 1g when steady on ground. Bug report by Thorsten Renk. 2015-08-09 19:59:29 +02:00
Torsten Dreyer
7294999f35 Prevent 100% CPU usage for FGCom standalone
Kévin Seroux:
As reported here (http://forum.flightgear.org/viewtopic.php?f=32&t=26629),
the FGCom standalone client use 100% of the CPU when it is in OBS mode. The fact to add the shortest sleep time
(1ms) has solved the problem. With this patch, I run FGCom with 1% of CPU usage instead of 100%.
2015-08-06 21:47:01 +02:00
Torsten Dreyer
d68af5ab1d Correct version numbers for start menu entries
Alessandro Mentitch submitted by Alessandro Menti
2015-08-04 10:25:47 +02:00
James Turner
67352a1a52 Fix SIGSEGV with Qt launcher on Linux.
- patch from Dirk Dittmann
2015-08-02 18:33:05 -05:00
Torsten Dreyer
1546778109 Bump version to 3.7.0 2015-07-27 21:41:58 +02:00
Rebecca N. Palmer
e296ea5fe0 Nasal security: document that symlinks are no longer followed 2015-07-25 10:15:31 +01:00
Rebecca N. Palmer
e2cbacff90 fgValidatePath: remove overly fragile test case
Fix failure to start with non-standard TerraSync directory
2015-07-14 19:43:51 +01:00
bcoconni
eb95edf2fc Prevent JSBSim from crashing when the user forgot to specify the axis. 2015-07-14 16:01:33 +02:00
bcoconni
e9239c7178 Clarified the error message: recall the name of the file that has not been found. 2015-07-14 15:59:45 +02:00
Torsten Dreyer
49277c0a6d bump version -> 3.6.0 2015-07-14 11:35:51 +02:00
Rebecca N. Palmer
6957a17434 fgValidatePath: fix \ vs / Windows bug 2015-07-14 08:00:22 +01:00
Rebecca N. Palmer
5b2ae615e5 avoid ERROR: The path '' does not exist... on startup
While harmless, it's an annoying distraction
2015-07-13 23:15:36 +01:00
Rebecca N. Palmer
e090a9da3f fgInitAllowedPaths: remove possibly invalid test paths 2015-07-13 22:53:23 +01:00
Torsten Dreyer
092707e78b Fix #1778: incorrect HUD values
negative latitude/longitude coordinates resulted in negative WEST/
SOUTH coordinates for the default format 0 (zero).
This should be now fixed so that
+12.3 gets formatted as 12.3N/E
-12.3 gets formatted as 12.3S/W
2015-07-13 16:23:56 +02:00
Rebecca N. Palmer
823d57bd53 Security: don't follow symlinks to forbidden directories
https://bugs.debian.org/780867

This messy approach is to minimise changes during freeze; for 3.7,
I plan to make realpath() handle non-existent files as "realpath
they would have if created now" and get rid of fgNormalizePath
2015-07-12 17:57:49 +01:00
Rebecca N. Palmer
1199d6d626 Security: don't pass a string to fgValidatePath then use the original
This is insecure because it always (not just on Windows) converts
\ to / before .. checking.  Either use the path it returns (as in
f_open()) or use an SGPath (where this conversion is already done)

Only a minor problem because the affected functions are limited to
the .sav file type
2015-07-12 17:49:21 +01:00
Torsten Dreyer
14b97abd8f Fix #1771, wrong groundspeed indication for UFO 2015-07-10 11:07:34 +02:00
Torsten Dreyer
36113bf69d Cleanup: remove unused code and includes
no functional change
jpg-httpd functionality was moved into httpd with 3.4
cmd-line option still spits out a warning
2015-07-08 17:24:13 +02:00
Torsten Dreyer
9c637e6b2a UFO and MagicCarpet FDM: avoid negative headings
Both FDM set the heading to negative values when turning left
through north. This should be fixed by this commit.
2015-07-08 11:14:46 +02:00
James Turner
b61904a7a1 Nightly build Windows fixes
- from Alessandro Menti
2015-07-05 10:39:41 +01:00
Erik Hofman
2496bdecfa Tie the sun vector to the property tree 2015-06-26 09:53:03 +02:00
Erik Hofman
fd909ebcd7 Merge the Thanks file from fgsata and the flightgear source 2015-06-19 16:07:01 +02:00
janodesbois
0d9091bab6 stop sending velocity and acceleration in the motion information when crashed
and using speed up time to allow a fine displayed predicted position
 when time accelerated (no more jumping planes accelerated using the mp patch)
tell me if it's not the good pace to do such things ;)
2015-06-13 11:02:30 +02:00
Torsten Dreyer
3c73a48ce2 Revert "Pull in latest mongoose HEAD"
This reverts commit cb2c421fdb.
Reason: seems to be broken on W32, no response on http socket
2015-06-12 11:52:10 +02:00
Torsten Dreyer
cd0f0b9856 Fix some warnings 2015-06-12 11:51:11 +02:00
Torsten Dreyer
f780480088 Fix random crash on exit in atc_mgr
make the ParkingAssignment a local object instead of
creating it on the heap as a member of the ATCManager
2015-06-10 12:04:47 +02:00
Torsten Dreyer
4b564b2555 Fix MSVC compile error 2015-06-08 13:19:51 +02:00
James Turner
0f90a2e9f3 FLIGHTGEAR_VERSION is always set. 2015-06-08 10:37:26 +01:00
James Turner
4289ac77dd Remove some debug output. 2015-06-08 10:37:26 +01:00
James Turner
bbff8dcbb6 Remove / reduce level on some debug output 2015-06-08 10:37:26 +01:00
James Turner
6e3a935abb Fix a Cocoa warning. 2015-06-08 10:37:26 +01:00
James Turner
54de0e9206 RPATH handling for Mac. 2015-06-08 10:37:26 +01:00
janodesbois
759aa51213 Basic MP patch, to allow lag compensation and get rid of rubber band effect.
the fgdata part is needed to make it working. configuration for each plane
beeing done with nasal
2015-06-06 06:41:03 +02:00