More fixes to get the code working when threads are disabled.
This commit is contained in:
parent
8437524d6b
commit
f42e3cb2ac
2 changed files with 5 additions and 5 deletions
|
@ -323,11 +323,9 @@ FGMetarEnvironmentCtrl::FGMetarEnvironmentCtrl ()
|
|||
fetch_elapsed( 9999.0 ),
|
||||
proxy_host( fgGetNode("/sim/presets/proxy/host", true) ),
|
||||
proxy_port( fgGetNode("/sim/presets/proxy/port", true) ),
|
||||
proxy_auth( fgGetNode("/sim/presets/proxy/authentication", true) )
|
||||
#if defined(ENABLE_THREADS) && ENABLE_THREADS
|
||||
,_error_dt( 0.0 ),
|
||||
proxy_auth( fgGetNode("/sim/presets/proxy/authentication", true) ),
|
||||
_error_dt( 0.0 ),
|
||||
_error_count( 0 )
|
||||
#endif
|
||||
{
|
||||
#if defined(ENABLE_THREADS) && ENABLE_THREADS
|
||||
thread = new MetarThread(this);
|
||||
|
@ -548,11 +546,13 @@ FGMetarEnvironmentCtrl::fetch_data( const string &icao )
|
|||
} catch (const sg_io_exception& e) {
|
||||
SG_LOG( SG_GENERAL, SG_WARN, "Error fetching live weather data: "
|
||||
<< e.getFormattedMessage().c_str() );
|
||||
#if defined(ENABLE_THREADS) && ENABLE_THREADS
|
||||
if (_error_count++ >= 3) {
|
||||
SG_LOG( SG_GENERAL, SG_WARN, "Stop fetching data permanently.");
|
||||
thread->cancel();
|
||||
thread->join();
|
||||
}
|
||||
#endif
|
||||
|
||||
result.m = NULL;
|
||||
}
|
||||
|
|
|
@ -249,11 +249,11 @@ private:
|
|||
*/
|
||||
friend void metar_cleanup_handler( void* );
|
||||
|
||||
#endif // ENABLE_THREADS
|
||||
|
||||
int _error_count;
|
||||
double _dt;
|
||||
double _error_dt;
|
||||
#endif // ENABLE_THREADS
|
||||
};
|
||||
|
||||
#endif // _ENVIRONMENT_CTRL_HXX
|
||||
|
|
Loading…
Reference in a new issue