Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WoP crashes when restarting a match with a new map from the menu #284

Open
kai-li-wop opened this issue Oct 28, 2024 · 14 comments
Open

WoP crashes when restarting a match with a new map from the menu #284

kai-li-wop opened this issue Oct 28, 2024 · 14 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@kai-li-wop
Copy link
Member

kai-li-wop commented Oct 28, 2024

WoP crashes (no response) and without any error message if you have ended a match with Leave Arena, are back in the main menu and then want to start a new match via the Create menu. I can reproduce this 100% under Windows 10. I am not sure if this is connected to #279 but would guess yes, since it's the nearly same behaviour.

Assertion failure at SDL_LockMutex_srw (C:\Users\Kai\Documents\Github\worldofpadman\libs\SDL2\src\thread\windows\SDL_sysmutex.c:92), triggered 1 time:
  'mutex->count == 0 && mutex->owner == 0'

grafik

@kai-li-wop kai-li-wop added bug Something isn't working priority Do it first labels Oct 28, 2024
@kai-li-wop kai-li-wop added this to the v1.7.0 milestone Oct 28, 2024
@kai-li-wop kai-li-wop moved this to Todo in WoP 1.7.x Oct 28, 2024
@mgerhardy
Copy link
Member

Works on linux for me - thus not reproducible

@mgerhardy
Copy link
Member

Please execute this in a debugger and show me a stacktrace here

@kai-li-wop
Copy link
Member Author

All I can give you right now is a warning in the terminal:
Assertion failure at SDL_LockMutex_srw (C:Users...\worldofpadman\libs\SDL2\src\thread\windows\SDL_sysmutex.c:92), triggered 1 time: 'mutex->count == 0 && mutex->owner == 0'

@mgerhardy
Copy link
Member

Is this still the case when using the official SDL2.dll?

@mgerhardy
Copy link
Member

Just a hint for my future me: This is a triggered sdl assert which either brings up another window (that is maybe in the back) or waits for input on the console. This should usually not be active for release builds of the lib.

@kai-li-wop
Copy link
Member Author

kai-li-wop commented Oct 30, 2024

I could no reproduce this with the official SDL! You need to test it with the current beta version, not the one build by us. Apart from that our SDL2 is far bigger (kbyte wise) than the official one.

@github-project-automation github-project-automation bot moved this from Todo to Done in WoP 1.7.x Oct 30, 2024
@kai-li-wop kai-li-wop moved this from Done to Ready for Review in WoP 1.7.x Oct 30, 2024
@kai-li-wop kai-li-wop removed the priority Do it first label Oct 30, 2024
@kai-li-wop
Copy link
Member Author

Oh yes, it crashes also with the beta version, but not every time. Seems random now.

@kai-li-wop kai-li-wop reopened this Oct 30, 2024
@kai-li-wop kai-li-wop moved this from Ready for Review to In Progress in WoP 1.7.x Oct 30, 2024
@mgerhardy
Copy link
Member

Please try a few older SDL versions

@Calinou
Copy link
Contributor

Calinou commented Nov 1, 2024

I can confirm this on Fedora 41 on 1.7.0-beta1. I didn't get a backtrace though, WoP just appeared to freeze after starting a second game on padcastle and I had to kill it from htop.

@mgerhardy
Copy link
Member

mgerhardy commented Nov 5, 2024

can you maybe attach a gdb session to the wop process to get a stacktrace?

@kai-li-wop
Copy link
Member Author

kai-li-wop commented Nov 5, 2024

@mgerhardy: I can add some more info.

SDL 2.30.9 was released a few days ago (after our Beta1 release), so an update might be helpful. https://github.com/libsdl-org/SDL/releases/tag/release-2.30.9

When using the official 2.30.9 build, WoP only freezes for a few seconds when trying to connect to the server (connection screen) and when leaving an arena and returning to the main menu. The mouse loses its connection to the game cursor and the windows cursor appears briefly. So it freezes for a moment, but it does not crash in a way that I have to kill the process. This in fact extends the loading times a lot, so I guess there is still something wrong.

The same thing happens when I use the official 2.30.8 build. Just a short freeze, unbound mouse, but no crash and no kill process.

When I use our homemade 2.30.8 build the file size is 4 times bigger and the game freezes completely as described in the original ticket. So I am not sure if our SDL build is broken somehow.

For a release I would add the official SDL files.

Results from tests of older versions up to current one. I used the official build win32_x64.

  • SDL2 2.0.8 --> freeze and kill procedure
  • SDL2 2.0.9 --> crash to desktop
  • SDL2 2.0.10 --> freeze and kill procedure
  • SDL2 2.0.12 --> freeze and kill procedure
  • SDL2 2.0.18 --> freeze and kill procedure
  • SDL2 2.0.20 --> crash to desktop
  • SDL2 2.0.22 --> crash to desktop
  • SDL2 2.24.0 --> freeze and kill procedure --> but after leaving 2nd map
  • SDL2 2.24.1 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.24.2 --> crash to desktop
  • SDL2 2.26.0 --> crash to desktop
  • SDL2 2.26.1 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.26.2 --> freeze and kill procedure
  • SDL2 2.26.3 --> freeze and kill procedure
  • SDL2 2.26.4 --> crash to desktop
  • SDL2 2.26.5 --> freeze and kill procedure
  • SDL2 2.28.0 --> crash to desktop --> but after leaving 3rd map
  • SDL2 2.28.1 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.28.2 --> freeze and kill procedure
  • SDL2 2.28.3 --> freeze and kill procedure --> but after leaving 2nd map
  • SDL2 2.28.4 --> freeze and kill procedure --> but after leaving 3rd map
  • SDL2 2.28.5 --> freeze and kill procedure --> but after leaving 2nd map
  • SDL2 2.30.0 --> crash to desktop
  • SDL2 2.30.1 --> freeze and kill procedure --> but after leaving 2nd map
  • SDL2 2.30.2 --> crash to desktop
  • SDL2 2.30.3 --> crash to desktop --> but after leaving 2nd map
  • SDL2 2.30.4 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.30.5 --> crash to desktop --> directly after respawn into 2nd map
  • SDL2 2.30.6 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.30.7 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.30.8 --> works so far, several times entering and leaving maps without crashes or freezes
  • SDL2 2.30.9 --> works so far, several times entering and leaving maps without crashes or freezes

@kai-li-wop kai-li-wop added the priority Do it first label Nov 5, 2024
@kai-li-wop kai-li-wop removed the priority Do it first label Nov 20, 2024
@kai-li-wop
Copy link
Member Author

Does not crash in Windows 10 any more with the original released SDL2 binaries

@github-project-automation github-project-automation bot moved this from In Progress to Done in WoP 1.7.x Nov 20, 2024
@kai-li-wop kai-li-wop moved this from Done to Ready for Review in WoP 1.7.x Nov 20, 2024
@syghfy
Copy link

syghfy commented Nov 20, 2024

Still crashes under Linux at least

gdb output:

`Fatal glibc error: pthread_mutex_lock.c:450 (__pthread_mutex_lock_full): assertion failed: e != ESRCH || !robust

Thread 1 "wop.x86_64" received signal SIGABRT, Aborted.
Downloading 4.06 K source file /usr/src/debug/glibc/glibc/nptl/pthread_kill.c
__pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0)
at pthread_kill.c:44
44 return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
`

@kai-li-wop kai-li-wop added the priority Do it first label Nov 20, 2024
@kai-li-wop kai-li-wop moved this from Ready for Review to In Progress in WoP 1.7.x Nov 20, 2024
@kai-li-wop kai-li-wop reopened this Nov 20, 2024
@kai-li-wop
Copy link
Member Author

Linux uses our self build ones

@kai-li-wop kai-li-wop modified the milestones: v1.7.0, v1.7.1 Nov 29, 2024
@kai-li-wop kai-li-wop moved this from In Progress to Todo in WoP 1.7.x Nov 29, 2024
@kai-li-wop kai-li-wop removed the priority Do it first label Nov 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: Todo
Development

No branches or pull requests

4 participants