After some months of just hitting ctrl+c I finally tried to find out why 
FG hangs every time on exit just sitting there doing nothing.

I did a backtrace on all threads and guessed, that sound may have 
something to do with it and it seems like I was right.
I have (define devices '(sdl)) in my .openalrc. When I change it to 
anything else, the hang disappears and FG exits normally. I'm lucky to 
have changed my soundcard recently, so it still works perfectly with 
ALSA, so the hang is history for me. But thought it can't hurt to report 
it to the list, as I don't have the slightest idea how this could be 
solved. Could be that it's no FG bug at all, but something in OpenAL 
(using SuSE 10.1's openal-1.0.20051129-17) or SDL (SDL-1.2.9-19).

The backtrace:

(gdb) thread apply all bt

Thread 7 (Thread -1466500192 (LWP 5846)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7efe7e6 in pthread_cond_wait@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#2  0x084081c6 in SGPthreadCond::wait (this=0xc37cc28, [EMAIL PROTECTED])
    at /usr/local/FlightGear/include/simgear/threads/SGThread.hxx:332
#3  0x08424c82 in FGVoiceMgr::FGVoiceThread::wait_for_jobs 
(this=0xc37cc20) at voice.hxx:84
#4  0x084211d0 in FGVoiceMgr::FGVoiceThread::run (this=0xc37cc20) at 
voice.cxx:229
#5  0x08577276 in start_handler (arg=0xc37cc20) at SGThread.cxx:23
#6  0xb7efb34b in start_thread () from /lib/libpthread.so.0
#7  0xb797665e in clone () from /lib/libc.so.6

Thread 6 (Thread -1446536288 (LWP 5845)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb796fd11 in ___newselect_nocancel () from /lib/libc.so.6
#2  0xb7eae8ff in SDL_Delay () from /usr/lib/libSDL-1.2.so.0
#3  0xb7b215a0 in sdl_blitbuffer () from /usr/lib/libopenal.so.0
#4  0x1057cef8 in ?? ()
#5  0xb7b2261c in _alcGetContext () from /usr/lib/libopenal.so.0
#6  0xb7b22864 in _alcDeviceWrite () from /usr/lib/libopenal.so.0
#7  0x0c37d1e0 in ?? ()
#8  0x00001000 in ?? ()
#9  0xb7b35850 in ?? () from /usr/lib/libopenal.so.0
#10 0xb7b319b8 in ?? () from /usr/lib/libopenal.so.0
#11 0xb7b22826 in _alcDeviceWrite () from /usr/lib/libopenal.so.0
#12 0xb7b078ab in async_mixer_iterate () from /usr/lib/libopenal.so.0
#13 0xb7b07788 in async_mixer_iterate () from /usr/lib/libopenal.so.0
#14 0xb7b21a3a in Posix_ExitThread () from /usr/lib/libopenal.so.0
#15 0xb7b21a26 in Posix_ExitThread () from /usr/lib/libopenal.so.0
#16 0xb7efb34b in start_thread () from /lib/libpthread.so.0
#17 0xb797665e in clone () from /lib/libc.so.6

Thread 3 (Thread -1429750880 (LWP 5842)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7efe7e6 in pthread_cond_wait@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#2  0x084081c6 in SGPthreadCond::wait (this=0xc33a0c0, [EMAIL PROTECTED])
    at /usr/local/FlightGear/include/simgear/threads/SGThread.hxx:332
#3  0x084917ce in SGBlockingQueue<std::string>::pop (this=0xc33a07c)
    at /usr/local/FlightGear/include/simgear/threads/SGQueue.hxx:233
#4  0x0848c3c9 in FGMetarEnvironmentCtrl::MetarThread::run 
(this=0xc33ade0) at environment_ctrl.cxx:720
#5  0x08577276 in start_handler (arg=0xc33ade0) at SGThread.cxx:23
#6  0xb7efb34b in start_thread () from /lib/libpthread.so.0
#7  0xb797665e in clone () from /lib/libc.so.6
---Type <return> to continue, or q <return> to quit---

Thread 2 (Thread -1252271200 (LWP 5841)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7efe7e6 in pthread_cond_wait@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#2  0x084081c6 in SGPthreadCond::wait (this=0xab609f0, [EMAIL PROTECTED])
    at /usr/local/FlightGear/include/simgear/threads/SGThread.hxx:332
#3  0x0840822c in SGBlockingQueue<FGTileEntry*>::pop (this=0xab609ac)
    at /usr/local/FlightGear/include/simgear/threads/SGQueue.hxx:233
#4  0x08407766 in FGTileLoader::LoaderThread::run (this=0xaaf1850) at 
FGTileLoader.cxx:178
#5  0x08577276 in start_handler (arg=0xaaf1850) at SGThread.cxx:23
#6  0xb7efb34b in start_thread () from /lib/libpthread.so.0
#7  0xb797665e in clone () from /lib/libc.so.6

Thread 1 (Thread -1225910576 (LWP 5837)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7efc698 in pthread_join () from /lib/libpthread.so.0
#2  0xb7b21af9 in Posix_WaitThread () from /usr/lib/libopenal.so.0
#3  0xa9c79ba0 in ?? ()
#4  0x00000000 in ?? ()


Nine

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to