Jump to content
Eternal Lands Official Forums
dragor42

Very long exit

Recommended Posts

I'm just starting to do some hacking with the code and the first thing I'm going to tackle is the very long exit I get when leaving the game. I'm using gentoo linux on an amd_64 cpu. When I close the program, it takes a very long time for the program to actually finish. It usually takes 30 seconds at a minimum. The longer I play the longer it takes. This happens with #exit or closing the window with the window manager.

 

Has anyone else have this happen to them or looked into this? This does not happen with my x86 box, only my amd_64 box. I think it's some really wierd problem with memory deallocation, but that's just a gut feeling.

Share this post


Link to post
Share on other sites

I'm just starting to do some hacking with the code and the first thing I'm going to tackle is the very long exit I get when leaving the game. I'm using gentoo linux on an amd_64 cpu. When I close the program, it takes a very long time for the program to actually finish. It usually takes 30 seconds at a minimum. The longer I play the longer it takes. This happens with #exit or closing the window with the window manager.

 

Has anyone else have this happen to them or looked into this? This does not happen with my x86 box, only my amd_64 box. I think it's some really wierd problem with memory deallocation, but that's just a gut feeling.

 

instant exit on gentoo amd_32 here.

Share this post


Link to post
Share on other sites

do you, by chance, have music playing? a while back we had problems where the client would hang during shutdown until the music thread got to the end of the file, it wasn't properly stopped

Share this post


Link to post
Share on other sites

I found this one really quickly. The problem was in alutExit(). That function calls alcMakeContextCurrent(NULL). That is a know problem on some linux boxes. It can cause hangs because it cannot lock a mutex. I've ran into this problem before. The simple way to fix it is to implement alutExit() ourselves without the offending call. I've already done this and tested it. It works prefectly fine. I'll be preparing a patch shortly.

Share this post


Link to post
Share on other sites

I've updated the patch using cvs diff -Nu. Sorry about that, I'm new to using patches. I've only ever had direct cvs access before. I hope this one works fine.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×