Go to file
Florent Rougon bb23af5d38 ResourceManager::findPath(): validate; accept absolute, read-allowed paths
- Perform the SGPath::validate() test for read access before returning a
  path obtained with a non-null second argument ("aContext").

- If SGPath(aContext, aResource) is an absolute path for which read
  access is authorized by SGPath::validate(), return it. This restores
  the possibility of using the 'play-audio-sample' FGCommand with an
  absolute, read-allowed path (was lost in FG commit 8853fded2953959).

- Because a fair number of the existing uses of
  ResourceManager::findPath() are not quite correct IMO, we execute the
  final part where all providers are tried in turn even if
  SGPath(aContext, aResource) is an absolute path (otherwise, the sim
  wouldn't start because it couldn't load materials.xml---see [1]).

- The SG_LOG call will spot a few errors in calling code/data, such as
  access tried for
  '/Aircraft/Generic/flightrecorder/generic-piston-propeller-4.xml' and
  '/Textures/Sky/cl_cumulus2.png'; since the function does not return at
  this point, these incorrect absolute paths which should be relative
  will still be given a chance with the BasePathProvider that has its
  base path set to $FG_ROOT; thus, they will be found as before this
  commit despite the new "access refused" warning (but please fix
  them!).

This commit requires FlightGear commit e7594f46876fc6b0b.

[1] https://sourceforge.net/p/flightgear/mailman/message/37697516/
2022-09-21 10:08:20 +03:00
3rdparty Use alternative name for internal expat_config.h 2019-10-05 17:19:09 +01:00
CMakeModules HTTPRepository: improving handling of archives 2021-03-01 09:56:48 +00:00
simgear ResourceManager::findPath(): validate; accept absolute, read-allowed paths 2022-09-21 10:08:20 +03:00
.gitignore Add NetBeans .gitignore 2019-12-24 20:58:48 +00:00
AUTHORS Added Curt to empty Authors file as CVS test. 2001-12-11 22:23:25 +00:00
ChangeLog Let the version number reflect the current state of the release process. 2010-01-21 06:15:18 +01:00
CMakeLists.txt HTTPRepository: improving handling of archives 2021-03-01 09:56:48 +00:00
COPYING Fix rpmlint/Linux packager complaints 2012-05-05 00:30:16 +02:00
Doxyfile Fix conditional compile logic 2019-12-15 00:18:39 -06:00
DoxygenMain.cxx Various doxygen improvements/fixes. 2018-01-12 08:32:04 +01:00
INSTALL Remove plib dep references from documentation files 2012-08-29 12:08:27 +02:00
NEWS Attempt to sort out the version number mess in preparation for a 1.9.0 release. 2008-12-19 20:39:59 +00:00
README Update README/INSTALL documentation. 2012-06-26 22:43:48 +02:00
README.cmake Remove plib dep references from documentation files 2012-08-29 12:08:27 +02:00
README.OSG Update README/INSTALL documentation. 2012-06-26 22:43:48 +02:00
README.sound Detect AeonWave and if it is installed use it, otherwise fall back to OpenAL. Also let get_available_devices() use C++ strings instead of const char* 2018-06-02 14:06:15 +02:00
README.zlib Updates to remove unneeded and old version of zlib source. 2006-03-23 21:59:59 +00:00
simgear-version new version: 2020.3.14 2022-04-04 11:41:23 +01:00
SimGearConfig.cmake.in HTTPRepository: improving handling of archives 2021-03-01 09:56:48 +00:00
Thanks SimGear: Typo in Thanks file 2007-07-23 22:00:31 +00:00

SimGear - Simulator Construction Tools
======================================
http://www.flightgear.org

SimGear is a set of open-source libraries designed to be used as building
blocks for quickly assembling 3d simulations, games, and visualization
applications.

SimGear is developed by the FlightGear project and also provides the base
for the FlightGear Flight Simulator.

Source code for SimGear is released under the GNU Library General Public
License (LGPL) - see COPYING for license details.

See INSTALL file for help on building SimGear.