]> git.mxchange.org Git - simgear.git/log
simgear.git
8 years agoRevert to c++98
Erik Hofman [Tue, 24 May 2016 19:37:12 +0000 (21:37 +0200)]
Revert to c++98

8 years agoDo not expose both std::isnan() and isnan()
Erik Hofman [Tue, 24 May 2016 15:32:22 +0000 (17:32 +0200)]
Do not expose both std::isnan() and isnan()

8 years agoFirst layer of separation between SimGear an OpenAL
Erik Hofman [Tue, 24 May 2016 13:47:20 +0000 (15:47 +0200)]
First layer of separation between SimGear an OpenAL

8 years agoRevert the check fro std::isnan() and isnan()
Erik Hofman [Tue, 24 May 2016 12:51:17 +0000 (14:51 +0200)]
Revert the check fro std::isnan() and isnan()

8 years agoSwitch to c++11
Erik Hofman [Tue, 24 May 2016 08:42:01 +0000 (10:42 +0200)]
Switch to c++11

8 years agoAdd more missing header files
Erik Hofman [Tue, 24 May 2016 08:12:39 +0000 (10:12 +0200)]
Add more missing header files

8 years agoFix missing <cstdint> on non-Mac
James Turner [Tue, 24 May 2016 07:16:24 +0000 (08:16 +0100)]
Fix missing <cstdint> on non-Mac

8 years agoIndentation fixes (and signed/unsigned comparison fix) to silence GCC 6 warnings
Alessandro Menti [Sun, 22 May 2016 17:14:42 +0000 (19:14 +0200)]
Indentation fixes (and signed/unsigned comparison fix) to silence GCC 6 warnings

8 years agoInitial Tar package support.
James Turner [Wed, 4 May 2016 19:35:48 +0000 (20:35 +0100)]
Initial Tar package support.

Needs proper testing, but basic unit-test passes.

8 years agoCMakeLists.txt: explicitly set the standard to C++98
Alessandro Menti [Sun, 22 May 2016 17:22:29 +0000 (19:22 +0200)]
CMakeLists.txt: explicitly set the standard to C++98

Set the C++ standard to C++98 to avoid GCC 6 compilation failures.

8 years agoFix missing includes
Florent Rougon [Mon, 23 May 2016 10:10:41 +0000 (12:10 +0200)]
Fix missing includes

When SimGear header files are included in a particular order, these
missing includes can cause the compilation to fail.

8 years agoFix a crash with mismatch package versions.
James Turner [Wed, 18 May 2016 18:02:41 +0000 (19:02 +0100)]
Fix a crash with mismatch package versions.

8 years agoFix removal of directories.
James Turner [Wed, 18 May 2016 09:50:57 +0000 (10:50 +0100)]
Fix removal of directories.

8 years agonew version: 2016.3.0
Automatic Release Builder [Tue, 17 May 2016 08:03:44 +0000 (10:03 +0200)]
new version: 2016.3.0

8 years agonew version: 2016.2.1
Automatic Release Builder [Tue, 17 May 2016 08:03:43 +0000 (10:03 +0200)]
new version: 2016.2.1

8 years agoUse _WIN32 instead of SG_WINDOWS for tests in simgear::strutils::error_string()
Florent Rougon [Fri, 13 May 2016 09:49:33 +0000 (11:49 +0200)]
Use _WIN32 instead of SG_WINDOWS for tests in simgear::strutils::error_string()

Since Cygwin has SG_WINDOWS defined but is likely to expose a POSIX or
GNU-like interface, using _WIN32 to decide whether Windows-specific
functions are available seems more appropriate than SG_WINDOWS to me.

8 years agoFix platform check for strerror_r on Mac
James Turner [Tue, 10 May 2016 18:47:25 +0000 (20:47 +0200)]
Fix platform check for strerror_r on Mac

8 years agoFix missing include in simgear/misc/strutils_test.cxx
Florent Rougon [Mon, 9 May 2016 14:37:09 +0000 (16:37 +0200)]
Fix missing include in simgear/misc/strutils_test.cxx

strutils_test.cxx uses std::string but doesn't include <string>
directly. This doesn't cause any error because it includes this header
indirectly via "strutils.hxx". However, I believe relying on this is bad
practice, hence the tiny fix.

8 years agoFix missing include in simgear/misc/strutils.cxx
Florent Rougon [Mon, 9 May 2016 14:03:37 +0000 (16:03 +0200)]
Fix missing include in simgear/misc/strutils.cxx

Thanks to Alan Teeder for the report.

8 years agoThread-safe alternative to strerror()
Florent Rougon [Sun, 8 May 2016 19:45:01 +0000 (21:45 +0200)]
Thread-safe alternative to strerror()

Uses:
  - strerror_s() on Windows;
  - the GNU strerror_r() on non-Windows systems where _GNU_SOURCE is
    defined (which is currently the case when the GNU libstdc++ is used,
    even if one doesn't explicitely define _GNU_SOURCE, cf.
    <https://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.predefined>);
  - the XSI-compliant strerror_r() on other systems, as long as
    _POSIX_C_SOURCE >= 200112L (otherwise, the compilation will abort
    due to a #error preprocessor instruction).

8 years agoadd siblings function to bucket.
Peter Sadrozinski [Sat, 7 May 2016 11:43:22 +0000 (07:43 -0400)]
add siblings function to bucket.
At some latitudes, buckets can have multiple siblings.

8 years agoRemove non-CURL HTTP option.
James Turner [Sat, 7 May 2016 09:11:40 +0000 (10:11 +0100)]
Remove non-CURL HTTP option.

8 years agoUse SGBinaryFile in a couple more places.
James Turner [Sat, 7 May 2016 09:03:48 +0000 (10:03 +0100)]
Use SGBinaryFile in a couple more places.

Most importantly, when computing a hash from the on-disk
state.

8 years agoIntroduce SGBinaryFile
Torsten Dreyer [Fri, 6 May 2016 20:01:42 +0000 (22:01 +0200)]
Introduce SGBinaryFile

For Windows, default file mode is TEXT.
If binary files should be created _O_BINARY shall be or'ed to the open
flags. This is not necessary on *nixes.

Introduce a SGBinaryFile as extension to SGFile which adds the flag
upon construction on Windows.

This should keep existing behaviour for all other usages of SGFile.

8 years agoDon't use object returned from vector::end()
Torsten Dreyer [Fri, 6 May 2016 14:21:43 +0000 (16:21 +0200)]
Don't use object returned from vector::end()

Replace all use of c->name by it->file() in
updateChildrenBasedOnHash()'s fsChildren loop
to avoid confusion.

Thanks to Geoff for spotting this!

8 years agoRemove unneeded local scope
Torsten Dreyer [Fri, 6 May 2016 14:20:09 +0000 (16:20 +0200)]
Remove unneeded local scope

(no functional change intended)

8 years agoFix one more crash on Windows in HTTPRepository
Torsten Dreyer [Fri, 6 May 2016 08:48:16 +0000 (10:48 +0200)]
Fix one more crash on Windows in HTTPRepository

inner scope it seems to overwrite out scope it on Win :-/

Anyway, the erase-remove-idiom is a better solution for that task
https://en.wikipedia.org/wiki/Erase%E2%80%93remove_idiom

Also remove some useless debug messages

8 years agoDon't continue parsing after processing version line
Torsten Dreyer [Thu, 5 May 2016 19:59:35 +0000 (21:59 +0200)]
Don't continue parsing after processing version line

8 years agoPackages: fix extract dir cleanup on success.
James Turner [Wed, 4 May 2016 21:22:34 +0000 (22:22 +0100)]
Packages: fix extract dir cleanup on success.

Don’t leave extract_xxxxxxx dirs in the Aircraft tree after successfully
extract the contents to the final location.

8 years agoAvoid unlink of an open file.
James Turner [Wed, 4 May 2016 21:13:15 +0000 (22:13 +0100)]
Avoid unlink of an open file.

Works on Unix, not so great on Windows it turns out. Thanks to Jasin
and Geoff for figuring this out in the end.

8 years agouse safer stl functions instead of pointer operations
Torsten Dreyer [Wed, 4 May 2016 19:10:12 +0000 (21:10 +0200)]
use safer stl functions instead of pointer operations

8 years agoAdd a bunch of debug messages to help fixing the Windows crash
Torsten Dreyer [Wed, 4 May 2016 13:44:55 +0000 (15:44 +0200)]
Add a bunch of debug messages to help fixing the Windows crash

This patch should be reverted once the bug is fixed

8 years agoEnable DNS resolver code by default
Torsten Dreyer [Tue, 3 May 2016 12:58:38 +0000 (14:58 +0200)]
Enable DNS resolver code by default

8 years agoTerrasync: implement HTTP service lookup via DNS
Torsten Dreyer [Tue, 3 May 2016 10:11:38 +0000 (12:11 +0200)]
Terrasync: implement HTTP service lookup via DNS

Let terrasync use the http repository if
  /sim/terrasync/http-server == "automatic"
  resolve DNS NAPTR RR for terrasync.flightgear.org with service "ws20"
  and flags "U". Pick one of the returned entries with lowest order
  and preference. If more than one entry  with the same order and
  preference is returned, pick a random entry of those returned.

or if
  /sim/terrasync/http-server != "automatic"
  explicitly use the value of that property as the http server

if
  /sim/terrasync/http-server is empty, fall back to the legacy
  SVN repository

8 years agoudns: fix self baked inet_pton
Torsten Dreyer [Tue, 3 May 2016 07:43:56 +0000 (09:43 +0200)]
udns: fix self baked inet_pton

8 years agoFix Nasal math.clamp()
Torsten Dreyer [Mon, 2 May 2016 19:57:35 +0000 (21:57 +0200)]
Fix Nasal math.clamp()

Thanks to "Red Leader" from the forum for spotting

8 years agoUse simgear sleep instead of usleep
Torsten Dreyer [Mon, 2 May 2016 19:25:19 +0000 (21:25 +0200)]
Use simgear sleep instead of usleep

8 years agoFix some warnings reported from msvc
Torsten Dreyer [Mon, 2 May 2016 18:54:28 +0000 (20:54 +0200)]
Fix some warnings reported from msvc

8 years agoFix Windows build (hopefully)
Torsten Dreyer [Mon, 2 May 2016 18:46:42 +0000 (20:46 +0200)]
Fix Windows build (hopefully)

8 years agoudns: add missing config.h
Torsten Dreyer [Mon, 2 May 2016 18:27:04 +0000 (20:27 +0200)]
udns: add missing config.h

8 years agoTry fix windows compile for udns
Torsten Dreyer [Mon, 2 May 2016 15:42:01 +0000 (17:42 +0200)]
Try fix windows compile for udns

8 years agoHardening the DNSClient code
Torsten Dreyer [Mon, 2 May 2016 14:21:42 +0000 (16:21 +0200)]
Hardening the DNSClient code

- add a timeout to avoid deadlock without a dns server
- test against existing terrasync.flightgear.org RR's

8 years agoDisplay random objects independently of buildings
Stuart Buchanan [Sun, 1 May 2016 21:35:21 +0000 (22:35 +0100)]
Display random objects independently of buildings

Fix bug reported by Thorsten RENK on the mailing list
that random objects were only being displayed if random
objects were also present for the tile.  Also fix crash
if none of the random object models were found.

8 years agoSet min-macos-version for Cmake 3.2.1
James Turner [Tue, 17 Mar 2015 16:56:17 +0000 (16:56 +0000)]
Set min-macos-version for Cmake 3.2.1

8 years agoFix broken build/install with DNS enabled
Torsten Dreyer [Thu, 28 Apr 2016 08:50:15 +0000 (10:50 +0200)]
Fix broken build/install with DNS enabled

8 years agoInitial commit for a DNS service resolver
Torsten Dreyer [Thu, 28 Apr 2016 06:19:30 +0000 (08:19 +0200)]
Initial commit for a DNS service resolver

- import udns library
  (http://www.corpit.ru/mjt/udns.html)
- initial draft for a DNSClient (derived from HTTPClient)

Enable compile and test by adding -D ENABLE_DNS=Yes to cmake flags

8 years agoCatalog refresh / package updating test.
James Turner [Wed, 20 Apr 2016 09:58:35 +0000 (11:58 +0200)]
Catalog refresh / package updating test.

8 years agoCatalog removal test
James Turner [Tue, 19 Apr 2016 11:56:07 +0000 (13:56 +0200)]
Catalog removal test

- verifies installed packages are removed also.

8 years agoExpand package-system unit-tests.
James Turner [Mon, 18 Apr 2016 12:41:25 +0000 (13:41 +0100)]
Expand package-system unit-tests.

More to come, but this covers the absolute basics now.

8 years agoFixes for HTTP cancellation.
James Turner [Thu, 14 Apr 2016 08:42:04 +0000 (09:42 +0100)]
Fixes for HTTP cancellation.

(Forgot to stage these from previous commit)

8 years agoHTTP request cancellation
James Turner [Thu, 14 Apr 2016 08:15:57 +0000 (09:15 +0100)]
HTTP request cancellation

- replaces abort() with something more structured.

8 years agoMake LOD for buildings/trees/STG configurable.
Stuart Buchanan [Fri, 8 Apr 2016 21:36:06 +0000 (22:36 +0100)]
Make LOD for buildings/trees/STG configurable.

Now based on /sim/rendering/static-lod/rough.

8 years agoFix problems parsing METAR strings that denote temporary sensor failures
Richard Senior [Tue, 5 Apr 2016 10:49:59 +0000 (11:49 +0100)]
Fix problems parsing METAR strings that denote temporary sensor failures

1. Weather (normally blank, RA, SN, etc.) can be "//"
2. Cloud can be suffixed by "///", e.g. FEW045///

Also updated unit test.

8 years agoGuard against disabling a not-yet-active catalog.
James Turner [Wed, 30 Mar 2016 16:09:33 +0000 (17:09 +0100)]
Guard against disabling a not-yet-active catalog.

8 years agoCode cleanups and fix codecPCM16 for big-endian systems (they seem rare these days)
Erik Hofman [Mon, 28 Mar 2016 13:08:28 +0000 (15:08 +0200)]
Code cleanups and fix codecPCM16 for big-endian systems (they seem rare these days)

8 years agoUse ref-ptr in canvas adapter getImage
James Turner [Sat, 26 Mar 2016 19:55:37 +0000 (19:55 +0000)]
Use ref-ptr in canvas adapter getImage

Adjusted while investigating missing tooltip texture with recent
OSG versions.

8 years agoPackages: handle catalog versions better
James Turner [Fri, 25 Mar 2016 23:04:45 +0000 (23:04 +0000)]
Packages: handle catalog versions better

When a catalog version is stale, disable it but don’t remove it,
and still try to refresh it. This should give much better behaviour
when the FG version changes, should behave as users expect.

8 years agoFix HTTP unit-test
James Turner [Fri, 25 Mar 2016 13:28:24 +0000 (13:28 +0000)]
Fix HTTP unit-test

8 years agoHTTP terra sync: fix hash cache handling
James Turner [Thu, 24 Mar 2016 19:15:20 +0000 (19:15 +0000)]
HTTP terra sync: fix hash cache handling

Avoids very long pauses blocking the terrasync thread, while existing
file trees are verified.

Also split the request queue so we don’t submit vary large numbers of
requests from a single repository, and hence block other repositories
from getting traffic.

8 years agoHTTP/curl - pick up sleep value
James Turner [Thu, 24 Mar 2016 18:41:30 +0000 (18:41 +0000)]
HTTP/curl - pick up sleep value

8 years agoExpose total bytes to download / remaining
James Turner [Tue, 22 Mar 2016 21:14:17 +0000 (21:14 +0000)]
Expose total bytes to download / remaining

For HTTP repositories, support some additional metrics about ongoing
transfers. Not currently exposed via properties / TerraSync API, but
will be shortly.

8 years agoHTTP/curl - transfer byte metric work
James Turner [Tue, 22 Mar 2016 21:13:22 +0000 (21:13 +0000)]
HTTP/curl - transfer byte metric work

Should fix the missing download rate feedback on the splash screen
and terra sync dialog.

8 years agoDisable HTTP pipelining if the connection closes.
James Turner [Tue, 22 Mar 2016 20:06:22 +0000 (20:06 +0000)]
Disable HTTP pipelining if the connection closes.

Don’t keep attempting to pipeline if the next server sets Close on
its response, since this just generates needless overhead.

8 years agoDisable persistent TerraSync cache for HTTP
James Turner [Sat, 5 Mar 2016 09:53:37 +0000 (09:53 +0000)]
Disable persistent TerraSync cache for HTTP

- since the root-level request for an HTTP repo is small, and static,
  it doesn’t make sense to use the same persistent cache, especially
  for initial testing.

8 years agoExpose more pipelining controls on HTTP code
James Turner [Tue, 1 Mar 2016 12:44:22 +0000 (12:44 +0000)]
Expose more pipelining controls on HTTP code

- used for both implementations, restrict default pipeline depth to
  5 instead of 32 which was perhaps a little ambitious for some
  servers.

8 years agoFix attempt to remove missing files.
James Turner [Tue, 1 Mar 2016 12:35:08 +0000 (12:35 +0000)]
Fix attempt to remove missing files.

8 years agoFixes for error handling in NetChannel
James Turner [Tue, 1 Mar 2016 12:34:56 +0000 (12:34 +0000)]
Fixes for error handling in NetChannel

- return the correct errno value instead of using -1

8 years agoHTTP repository testing tool.
James Turner [Sat, 27 Feb 2016 04:35:41 +0000 (06:35 +0200)]
HTTP repository testing tool.

8 years agoFix Windows compile of HTTP repo tests.
James Turner [Fri, 26 Feb 2016 19:21:00 +0000 (21:21 +0200)]
Fix Windows compile of HTTP repo tests.

8 years agoLots of work on HTTP repository failure handling.
James Turner [Fri, 26 Feb 2016 19:18:26 +0000 (21:18 +0200)]
Lots of work on HTTP repository failure handling.

8 years agoFix a nasty bug in non-libCurl HTTP pipelining.
James Turner [Thu, 25 Feb 2016 22:10:34 +0000 (00:10 +0200)]
Fix a nasty bug in non-libCurl HTTP pipelining.

- when requests were closely overlapped, but not submitted at the
  same time, connection state could get corrupted.

8 years agoMore error reporting from TerraSync/HTTP
James Turner [Thu, 25 Feb 2016 19:20:33 +0000 (21:20 +0200)]
More error reporting from TerraSync/HTTP

- raise more errors when requests fail, and report/catch these.

8 years agoFix compilation with older versions of libCurl.
James Turner [Thu, 25 Feb 2016 19:19:44 +0000 (21:19 +0200)]
Fix compilation with older versions of libCurl.

8 years agoFix for libCurl pipelining and connection count.
James Turner [Wed, 24 Feb 2016 21:35:54 +0000 (23:35 +0200)]
Fix for libCurl pipelining and connection count.

8 years agoMerge /u/edauvergne/simgear/ branch particles into next
Torsten Dreyer [Tue, 23 Feb 2016 21:55:18 +0000 (21:55 +0000)]
Merge /u/edauvergne/simgear/ branch particles into next

http://sourceforge.net/p/flightgear/simgear/merge-requests/4/

8 years agoWork around lack of endian.h on Windows
James Turner [Mon, 22 Feb 2016 21:53:27 +0000 (23:53 +0200)]
Work around lack of endian.h on Windows

8 years agoFix a typo breaking HTTP unit-test.
James Turner [Mon, 22 Feb 2016 21:41:13 +0000 (23:41 +0200)]
Fix a typo breaking HTTP unit-test.

8 years agoHTTP repository: replace an assert.
James Turner [Mon, 22 Feb 2016 19:27:03 +0000 (21:27 +0200)]
HTTP repository: replace an assert.

- Torsten is seeing this on his setup.

8 years agoMore HTTP repository compile tweaks.
James Turner [Mon, 22 Feb 2016 19:07:01 +0000 (21:07 +0200)]
More HTTP repository compile tweaks.

8 years agoUse SGFile to avoid Windows breakage.
James Turner [Mon, 22 Feb 2016 18:50:24 +0000 (20:50 +0200)]
Use SGFile to avoid Windows breakage.

8 years agoFix SimGear compile on Linux
Torsten Dreyer [Mon, 22 Feb 2016 18:49:20 +0000 (19:49 +0100)]
Fix SimGear compile on Linux

8 years agoHopefully fix Linux compilation.
James Turner [Mon, 22 Feb 2016 16:05:02 +0000 (18:05 +0200)]
Hopefully fix Linux compilation.

8 years agoOptionally use HTTP repository.
James Turner [Sun, 21 Feb 2016 19:49:02 +0000 (21:49 +0200)]
Optionally use HTTP repository.

- disabled by default since needs much testing.

8 years agoHTTP repository implementation
James Turner [Tue, 26 Jan 2016 00:29:25 +0000 (18:29 -0600)]
HTTP repository implementation

A plain-HTTP terrasync repository implementation, using the
SimGear HTTP abstraction. File validity is based on SHA hashes,
and existing files are not re-downloaded if their hash matches,
so soft upgrade from an SVN checkout is possible.

8 years agoCreate TerraSync repo API
James Turner [Tue, 26 Jan 2016 00:15:48 +0000 (18:15 -0600)]
Create TerraSync repo API

- create an abstract API for a remote repository, based on the current
  SVN repository API, and update the code accordingly.

8 years agoDebugging message improvements for the particle system.
Edward d'Auvergne [Mon, 15 Feb 2016 13:30:50 +0000 (14:30 +0100)]
Debugging message improvements for the particle system.

8 years agonew version: 2016.2.0
Automatic Release Builder [Wed, 17 Feb 2016 20:16:33 +0000 (21:16 +0100)]
new version: 2016.2.0

8 years agonew version: 2016.1.1
Automatic Release Builder [Wed, 17 Feb 2016 20:16:32 +0000 (21:16 +0100)]
new version: 2016.1.1

8 years agocorrect user-agent string for terrasync
Torsten Dreyer [Mon, 15 Feb 2016 15:53:31 +0000 (16:53 +0100)]
correct user-agent string for terrasync

8 years agoFix misnamed macro.
James Turner [Mon, 8 Feb 2016 09:37:35 +0000 (09:37 +0000)]
Fix misnamed macro.

- should fix TerraSync user-agent.

8 years agomath: 'void getMaxSubdiv' does not make any sense
Rebecca N. Palmer [Sat, 6 Feb 2016 21:16:27 +0000 (21:16 +0000)]
math: 'void getMaxSubdiv' does not make any sense

Fixes build failure with GCC 6: https://bugs.debian.org/812014
(getMaxSubdiv is currently unused)

8 years agoCMake: don’t export build to build tree
James Turner [Tue, 2 Feb 2016 18:33:20 +0000 (18:33 +0000)]
CMake: don’t export build to build tree

- only export targets to the install tree, since this is
  hopefully compatible with CMake 2.8

8 years agoFix headless build for CMake export
James Turner [Sat, 30 Jan 2016 14:29:12 +0000 (14:29 +0000)]
Fix headless build for CMake export

8 years agoWork on CMake export of targets.
James Turner [Fri, 29 Jan 2016 09:39:08 +0000 (09:39 +0000)]
Work on CMake export of targets.

8 years agoVS2013 compile fixes.
James Turner [Wed, 27 Jan 2016 14:02:27 +0000 (14:02 +0000)]
VS2013 compile fixes.

- mostly about return type conversions.

8 years agoTerraSync log typo
Gijs de Rooy [Wed, 20 Jan 2016 11:16:14 +0000 (12:16 +0100)]
TerraSync log typo

8 years agoNew log class for terrasync
James Turner [Sat, 16 Jan 2016 21:49:58 +0000 (15:49 -0600)]
New log class for terrasync

8 years agoAllow use of noreturn attribute with Clang
James Turner [Tue, 12 Jan 2016 18:48:34 +0000 (12:48 -0600)]
Allow use of noreturn attribute with Clang

- other compilers could also be enabled in the future.

8 years agoFix a Simgear compile failure.
James Turner [Sat, 9 Jan 2016 15:45:43 +0000 (09:45 -0600)]
Fix a Simgear compile failure.

8 years agoLinux test_HTTP fixes.
James Turner [Fri, 8 Jan 2016 18:17:02 +0000 (12:17 -0600)]
Linux test_HTTP fixes.

libCurl HTTP unit-test fixes.