1
0
Fork 0
Commit graph

2736 commits

Author SHA1 Message Date
James Turner
9e773e85f8 #1291, hang on exit with OSG threading.
Explicitly stop threading during shutdown, before destroying various
rendering / viewer related structures.
2014-01-04 16:10:42 +00:00
James Turner
47e802e674 Fix for the fix: check for a viewer.
- avoid a crash if we bail out before creating the viewer (missing
data or bad aircraft)
2013-12-30 17:16:53 +00:00
James Turner
b0db2a764f Fix crash on exit (cancel the osgDB pager)
- borrow some code from the new reset codepath to cleanly stop the
OSG pager thread during normal shutdown. Avoids a race-condition 
destroying various structures the pager thread might be modifying.
2013-12-30 15:24:15 +00:00
James Turner
4c51ad0d87 Cocoa: fix warning about deprecated function.
SetFrontProcess is deprecated, use NSApplication instead now we
have the CocoaHelpers file.
2013-12-21 15:31:27 +00:00
Rebecca Palmer
4427ee7406 Always make sure the Terrasync directory is set and exists
This was previously done only if Terrasync was on, but this made
it impossible to use the GUI dialog to turn it on for the first
time in a fresh install
2013-12-20 12:39:23 +00:00
James Turner
5cf8157a66 Security: more conservative dir permission masks.
Use 0755 instead of 077 everywhere we create a directory.
2013-12-19 14:53:39 +00:00
James Turner
52f2f5ff78 Bugfix: remove the (totally broken) skyblend option 2013-12-19 14:53:39 +00:00
Rebecca Palmer
bf1fe65bc5 Disable screensaver: initial Linux-only implementation
Add a function fgOSDisableScreensaver() that attempts to disable the
screensaver (currently only succeeding on Linux), and call it on startup.

CMake option USE_DBUS (on by default), requires libdbus-1

Motivation: most screensavers do not monitor the joystick
https://bugs.launchpad.net/ubuntu/+source/flightgear/+bug/793599

Discussion: http://sourceforge.net/p/flightgear/mailman/message/31717061/
2013-12-15 21:18:22 +00:00
James Turner
b3534ff8c2 Reset: use new copy-properties helper. 2013-12-15 20:46:34 +00:00
James Turner
df3f842f8a Reset: Clear the pager queues, preserve properties. 2013-12-09 23:27:40 +00:00
James Turner
5d8fa03090 Shutdown: clear effects cleanly.
Avoids effects (and referenced properties / objects within) persisting
due to references in the effects cache, after globals are gone.
2013-12-09 23:27:40 +00:00
Thomas Geymayer
93dff17649 Set "/sim/fghome-readonly" to false also for Windows.
"/sim/fghome-readonly" is read with a default of false always,
but I think the code should set it explicitly to false for all
platforms.
2013-12-09 23:16:25 +01:00
Thomas Geymayer
13d94f240c Check return values if write and unlink. 2013-12-09 23:15:35 +01:00
Thomas Geymayer
5fb7b2e12c Canvas: Now only one global SystemAdapter is used... 2013-12-09 23:13:45 +01:00
James Turner
6763d232cd Reset: clear the osg object cache 2013-12-06 17:38:23 +00:00
James Turner
7ff9792b96 Reset: listener cleanup 2013-12-04 09:11:26 +00:00
James Turner
8cd71ff1ef Reset: clear effects cache 2013-12-04 09:09:47 +00:00
James Turner
25bf3793bd Reset: fix a static in play-audio-sample
Had to add this to FGGlobals, since it needs to be cleaned up
alongside the sound manager (which ideally it would be owned by, 
but that's a change for another day)
2013-11-25 23:53:58 +00:00
bcoconni
d3f6ab38c2 Fixed a race condition so that FG runs most of the time (instead of crashes most of the time) 2013-11-24 20:06:28 +01:00
James Turner
2015016466 Break config init / aircraft loading apart.
Allows aircraft loading to proceed during reset without original
values over-writing the updated ones.
2013-11-24 15:10:00 +00:00
James Turner
af6095c5d1 Reset: do general init on reset path 2013-11-22 22:52:33 +00:00
James Turner
1d8b080782 Reset: delete mat-lib, re-create on reset 2013-11-22 22:52:29 +00:00
James Turner
1f699984e9 One more Mac helper moved into CocoaHelpers.mm 2013-11-19 22:01:11 +00:00
James Turner
875227057c Structural work (init + shutdown) for new reset system.
The new approach is still work in progress (compile time option) and 
non-functional, existing reset still works.
2013-11-19 17:38:51 +00:00
James Turner
2331956539 One more Mac helper moved into CocoaHelpers.mm 2013-11-18 15:52:30 +00:00
James Turner
2c4ac08895 Globals: delete/shutdown tweaks.
Avoid aircraft-model crash in accessing fx/sound
during shutdown.
2013-11-16 14:25:12 +00:00
James Turner
fe357ba2a9 Refactor aircraft-dir visiting.
Cap maximum depth to avoid bug 865
2013-11-16 14:24:37 +00:00
James Turner
d2962ffb2d Reset: refactor static CameraGroup ownership 2013-11-16 13:02:47 +00:00
James Turner
98078cdd55 Reset: make fgSetDefaults non-static. 2013-11-16 13:02:43 +00:00
James Turner
0191b597e7 Environment manager: use aircraft_pos helper 2013-11-16 12:28:51 +00:00
James Turner
780393e2fe Release property refs on shutdown. 2013-11-16 11:56:42 +00:00
James Turner
fecb475145 Refactor Cocoa helpers.
Change away from using deprecated FSFindFolder.
2013-11-16 10:58:17 +00:00
James Turner
2bff8d2220 Fix Linux build
Linux needs explicit includes for open() and flags.
2013-11-16 09:31:18 +00:00
James Turner
0cda3cbfb2 Multiple-instance support.
Write PID file to FG_HOME, use this to detect multiple launches.
When this situation is detected, set a marker property and place various
objects into read-only mode, such as the NavCache and TerraSync.

PID file is created using open+unlink semantics on POSIX, and 
DELETE_ON_CLOSE on Windows, so it will be removed when fgfs exits,
even if killed or crashes.
2013-11-15 21:04:15 +00:00
James Turner
13d5fd4c25 More tweaks for Linux.
(Needs explicit include of stdio, and stdarg in the header)
2013-11-14 23:32:02 +00:00
James Turner
ef55d175dd Linux needs stdarg.h for va_args 2013-11-14 23:14:51 +00:00
James Turner
1f7fdc3e07 Kill some archaic options. 2013-11-14 23:14:46 +00:00
James Turner
1db9d25f56 Translation helpers, add global functions.
These are designed for compact access to translations, including a
positional printf.
2013-11-14 22:03:00 +00:00
James Turner
136cd6ac51 Message box support.
This allows us to display a platform-native dialog for problems
which occur early in startup (before we can show a PUI/Canvas dialog).

In particular this improves feedback where FG_HOME, FG_DATA or
aircraft selection is wrong, all of which happen very early in startup.
2013-11-14 22:02:29 +00:00
Clément de l'Hamaide
7e90c8aa2b Force 32 bits depth on .ico - only for Windows 2013-11-14 21:24:56 +01:00
James Turner
e25aa4f004 Fix some static property references.
(These cause problems when replacing the property tree during reset)
2013-11-14 16:37:46 +00:00
Clément de l'Hamaide
1c49890bec Icons update 2013-11-13 22:49:07 +01:00
James Turner
4a3b8c5765 Reset: changes for SGSubsystem ownership.
Keep in sync with updated ownership model in subsystem groups.
2013-11-12 23:36:18 +00:00
James Turner
44246d7708 Reset: adjust for tweaked TerraSync API 2013-11-12 23:10:19 +00:00
James Turner
af40bcb60e Reset: explicit close-window function.
Allow orderly shutdown of OSG before cxa_finalize
2013-11-12 22:57:13 +00:00
Thomas Geymayer
cf270bde22 Expose HTTP module to Nasal. 2013-10-27 19:39:22 +01:00
Thomas Geymayer
8a582e6376 Update/refactor for simgear HTTP changes. 2013-10-27 19:39:22 +01:00
James Turner
4e7a22f589 Default to 32-bit color buffers.
Requesting 16-bit is probably doing more harm than good on modern
hardware. Command line switch to change works as before.

Also update the default window size, although this is actually
set by preferences.xml
2013-10-27 13:03:01 +00:00
James Turner
d127f7709f Remove confusing reference to SDL/GLUT 2013-10-26 21:12:57 +01:00
James Turner
3cdf948c8b SGI and Borland compilers are gone. 2013-10-26 21:11:02 +01:00