e807c7f95c
metar fetcher. Effectively this caused the metar thread and the main thread to both attempt to fetch weather data. This could lead to long pauses when the main thread decided to fetch the weather, and introduced a race condition that could cause a segfault/crash. Investigating this issue, I discovered that even longer ago, someone confused #defines and #ifdef symbols with C/C++ variables. If I #define XYZ 0 it is defined so #ifdef XYZ is true, not false like a variable. Our thread detection made this mistake and there were follow up patches to work around it. So I fixed the configure script (ahhh, reading the autoconf manual is highly recommended excercise for people editing the configure.ac file.) I also discovered that we were hardwiring with_threads=yes with no way via configure options to disable threads from the build so I fixed that. Then I patched up the #ifdef's scattered through the code to match the configure script changes, oh and by the way, I stumbled upon a past typo that led to the race condition in the metar fetching thread and fixed that. |
||
---|---|---|
.. | ||
.cvsignore | ||
design | ||
FGTileLoader.cxx | ||
FGTileLoader.hxx | ||
hitlist.cxx | ||
hitlist.hxx | ||
Makefile.am | ||
maptest.cxx | ||
newcache.cxx | ||
newcache.hxx | ||
scenery.cxx | ||
scenery.hxx | ||
test.cxx | ||
tileentry.cxx | ||
tileentry.hxx | ||
tilemgr.cxx | ||
tilemgr.hxx |