]> git.mxchange.org Git - simgear.git/log
simgear.git
8 years agoFix user-after-free in HTTP repo code
James Turner [Thu, 2 Jun 2016 22:53:15 +0000 (23:53 +0100)]
Fix user-after-free in HTTP repo code

8 years agoMore permissive catalog version checks
James Turner [Wed, 1 Jun 2016 21:46:17 +0000 (22:46 +0100)]
More permissive catalog version checks

- support wildcard prefixes on FlightGear versions
- drop catalog version equality check

8 years agoMore VS2015 fixes
James Turner [Wed, 1 Jun 2016 21:36:36 +0000 (22:36 +0100)]
More VS2015 fixes

8 years agoMake sure block align is in samples when calling alBufferi with AL_UNPACK_BLOCK_ALIG...
Erik Hofman [Wed, 1 Jun 2016 21:12:55 +0000 (23:12 +0200)]
Make sure block align is in samples when calling alBufferi  with AL_UNPACK_BLOCK_ALIGNMENT_SOFT

8 years agoMSVC 12 still requires snprintf to be defined
Jasin Colegrove [Wed, 1 Jun 2016 14:24:30 +0000 (10:24 -0400)]
MSVC 12 still requires snprintf to be defined

8 years agoblock_alignment for AL_SOFT_block_alignment is in samples, not in bytes
Erik Hofman [Wed, 1 Jun 2016 12:16:49 +0000 (14:16 +0200)]
block_alignment for AL_SOFT_block_alignment is in samples, not in bytes

8 years agoFix a comment
Erik Hofman [Wed, 1 Jun 2016 08:10:34 +0000 (10:10 +0200)]
Fix a comment

8 years agoRevert to the previous way of handling OpenAL. The reason was to find alext.h but...
Erik Hofman [Wed, 1 Jun 2016 07:51:41 +0000 (09:51 +0200)]
Revert to the previous way of handling OpenAL. The reason was to find alext.h but that reason has gone by copying a small number of defines

8 years agoFix for VS2015 compilation
James Turner [Tue, 31 May 2016 12:41:28 +0000 (13:41 +0100)]
Fix for VS2015 compilation

8 years agoFix VS2015 compilation
James Turner [Tue, 31 May 2016 12:40:32 +0000 (13:40 +0100)]
Fix VS2015 compilation

8 years agoFix VS2015 compilation
James Turner [Tue, 31 May 2016 12:40:00 +0000 (13:40 +0100)]
Fix VS2015 compilation

8 years agoAdd the option to define volume and pitch using an expression
Erik Hofman [Tue, 31 May 2016 11:40:46 +0000 (13:40 +0200)]
Add the option to define volume and pitch using an expression

8 years agoAdd IMA4 support
Erik Hofman [Mon, 30 May 2016 12:17:16 +0000 (14:17 +0200)]
Add IMA4 support

8 years agoMore libCurl version guards.
James Turner [Mon, 30 May 2016 12:02:01 +0000 (13:02 +0100)]
More libCurl version guards.

8 years agoWhitespace fixes.
James Turner [Mon, 30 May 2016 11:53:26 +0000 (12:53 +0100)]
Whitespace fixes.

8 years agoFreeBSD fixes from Ganael LAPLANCHE
James Turner [Mon, 30 May 2016 11:52:48 +0000 (12:52 +0100)]
FreeBSD fixes from Ganael LAPLANCHE

8 years agoAdd test files for mulaw en IMA4 ADPCM
Erik Hofman [Mon, 30 May 2016 09:50:11 +0000 (11:50 +0200)]
Add test files for mulaw en IMA4 ADPCM

8 years agoAdd support for native mulaw encoded samples if the OpenAL implementation supports it
Erik Hofman [Mon, 30 May 2016 09:46:41 +0000 (11:46 +0200)]
Add support for native mulaw encoded samples if the OpenAL implementation supports it

8 years agoFind OpenAL the proper way
Erik Hofman [Mon, 30 May 2016 08:50:22 +0000 (10:50 +0200)]
Find OpenAL the proper way

8 years agoDo not forget to alter the function declaration as well
Erik Hofman [Fri, 27 May 2016 20:43:52 +0000 (22:43 +0200)]
Do not forget to alter the function declaration as well

8 years agoFix two OpenAL related compiler errors
Erik Hofman [Fri, 27 May 2016 17:08:20 +0000 (19:08 +0200)]
Fix two OpenAL related compiler errors

8 years agoMove all OpenAL function calls from SampleMgr to soundMgr
Erik Hofman [Fri, 27 May 2016 12:40:49 +0000 (14:40 +0200)]
Move all OpenAL function calls from SampleMgr to soundMgr

8 years agoSwitch to out own audio format defines
Erik Hofman [Fri, 27 May 2016 09:58:01 +0000 (11:58 +0200)]
Switch to out own audio format defines

8 years agoRemove unused sample queue code
Erik Hofman [Fri, 27 May 2016 09:37:47 +0000 (11:37 +0200)]
Remove unused sample queue code

8 years agoRemove support for stereo sounds
Erik Hofman [Fri, 27 May 2016 08:52:04 +0000 (10:52 +0200)]
Remove support for stereo sounds

8 years agoHTTP: Always use absolute paths for hashes
James Turner [Thu, 26 May 2016 22:36:03 +0000 (23:36 +0100)]
HTTP: Always use absolute paths for hashes

Ensure we only compute / retrieve hashes for absolute paths. Fixes
duplicate paths in repository hash cache.

8 years agoPartial update support for HTTP repos.
James Turner [Tue, 29 Mar 2016 17:11:56 +0000 (18:11 +0100)]
Partial update support for HTTP repos.

Not used yet, we set full-update mode on repositories for the
moment. Pending Terrasync change will enable partial mode.

8 years agoAllow updating a Catalog URL explicitly.
James Turner [Wed, 25 May 2016 20:46:16 +0000 (21:46 +0100)]
Allow updating a Catalog URL explicitly.

Needed for fallback Catalog URL support.

8 years agoExpose pending count from terrasync
James Turner [Wed, 25 May 2016 19:54:26 +0000 (20:54 +0100)]
Expose pending count from terrasync

Total and expose HTTP pending download value as a new
property under terrasync-root.

8 years agoAbstractRepository interface removed.
James Turner [Wed, 25 May 2016 19:39:15 +0000 (20:39 +0100)]
AbstractRepository interface removed.

8 years agoRemove SVN sync code.
James Turner [Wed, 25 May 2016 19:36:04 +0000 (20:36 +0100)]
Remove SVN sync code.

8 years agoRemove old terraysnc backend methods.
James Turner [Wed, 25 May 2016 19:27:24 +0000 (20:27 +0100)]
Remove old terraysnc backend methods.

Only in-process HTTP access is supported now, SVN and rsync
and removed. This is to allow changes for better use of the
HTTP API.

8 years agoAdd SYSTEM_UDNS CMake option. Remove spurious EXPAT_LIBRARIES linking when using...
Maciej Mrozowski [Thu, 26 May 2016 00:24:19 +0000 (02:24 +0200)]
Add SYSTEM_UDNS CMake option. Remove spurious EXPAT_LIBRARIES linking when using bundled expat.

8 years agoGuard usage of CURLMOPT_MAX_TOTAL_CONNECTIONS
James Turner [Wed, 25 May 2016 19:08:20 +0000 (20:08 +0100)]
Guard usage of CURLMOPT_MAX_TOTAL_CONNECTIONS

Check the Curl patch version to avoid breaking on older
sustems.

8 years agoProbably a better fix
Erik Hofman [Wed, 25 May 2016 12:30:06 +0000 (14:30 +0200)]
Probably a better fix

8 years agoMSVC 2013 and later define std::isnan
Erik Hofman [Wed, 25 May 2016 07:08:52 +0000 (09:08 +0200)]
MSVC 2013 and later define std::isnan

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.