Client Crash

What do you want to see in Armagetron soon? Any new feature ideas? Let's ponder these ground breaking ideas...
Post Reply
User avatar
Light
Reverse Outside Corner Grinder
Posts: 1667
Joined: Thu Oct 20, 2011 2:11 pm

Client Crash

Post by Light »

When I'm on a menu and I try to open my console, it crashes the game. I don't believe this occurred on Ubuntu, but it does on Debian with the newest 0.4 release.

Code: Select all

tom@debian:~/armagetronad/client/bin$ ./armagetronad-experimental
Segmentation fault
Debian GNU/Linux 7.0 (wheezy)

It's not really a big deal, just curious if there's something I did wrong or if it's an issue with the build.
epsy
Adjust Outside Corner Grinder
Posts: 2003
Joined: Tue Nov 07, 2006 6:02 pm
Location: paris
Contact:

Re: Client Crash

Post by epsy »

I assume you compiled it yourself? If not, how did you obtain the client?

If so, please provide a backtrace of the crash. Here's how(I'll put that on the wiki sometime soon):

1. Install gdb(GNU Debugger)
2. Run "gdb ./armagetronad-experimental"
3. In the gdb prompt, type "run"
4. Reproduce the crash.
5. gdb will show a prompt again. Type "backtrace", and paste the output here.
User avatar
Light
Reverse Outside Corner Grinder
Posts: 1667
Joined: Thu Oct 20, 2011 2:11 pm

Re: Client Crash

Post by Light »

Yes, I did. I didn't do anything special though. Just installed it to a certain directory, and didn't install to system / etc.

Code: Select all

#0  0x00000000005b7bcc in su_GetJoystick(int) ()
#1  0x00000000005b7edf in su_TransformEvent(SDL_Event&, std::vector<uTransformEventInfo, std::allocator<uTransformEventInfo> >&) ()
#2  0x00000000005b893e in su_HandleEvent(SDL_Event&, bool) ()
#3  0x00000000005c24d4 in uMenu::HandleEvent(SDL_Event) ()
#4  0x00000000005c3737 in uMenu::OnEnter() ()
#5  0x000000000048b225 in do_con() ()
#6  0x0000000000607284 in st_DoToDo() ()
#7  0x00000000005c2ee9 in uMenu::OnEnter() ()
#8  0x0000000000469bf0 in MainMenu(bool) ()
#9  0x0000000000411c17 in main ()
epsy
Adjust Outside Corner Grinder
Posts: 2003
Joined: Tue Nov 07, 2006 6:02 pm
Location: paris
Contact:

Re: Client Crash

Post by epsy »

The bug is ours. What version of SDL do you use and do you have any gamepad installed?
User avatar
Light
Reverse Outside Corner Grinder
Posts: 1667
Joined: Thu Oct 20, 2011 2:11 pm

Re: Client Crash

Post by Light »

1.2 as is in the Debain 7 repos. Or the Mint Debian repo.
Gamepad as in controller or something? No, just a regular USB keyboard.

Edit: If it's any use, it also happens when you pull up the menu in a game.

Single Player

Code: Select all

#0  0x00000000005b7bcc in su_GetJoystick(int) ()
#1  0x00000000005b7edf in su_TransformEvent(SDL_Event&, std::vector<uTransformEventInfo, std::allocator<uTransformEventInfo> >&) ()
#2  0x00000000005b893e in su_HandleEvent(SDL_Event&, bool) ()
#3  0x00000000005c24d4 in uMenu::HandleEvent(SDL_Event) ()
#4  0x00000000005c3737 in uMenu::OnEnter() ()
#5  0x000000000048b225 in do_con() ()
#6  0x0000000000607284 in st_DoToDo() ()
#7  0x00000000005c2ee9 in uMenu::OnEnter() ()
#8  0x0000000000469bf0 in MainMenu(bool) ()
#9  0x000000000046af6d in ingame_menu() ()
#10 0x0000000000607284 in st_DoToDo() ()
#11 0x0000000000466fe0 in sg_EnterGameCore(nNetState) ()
#12 0x000000000046700d in sg_EnterGame(nNetState) ()
#13 0x000000000046b723 in own_game(nNetState) ()
#14 0x000000000046be1c in sg_SinglePlayerGame() ()
#15 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#16 0x00000000005c2ff1 in uMenu::OnEnter() ()
#17 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#18 0x00000000005c2ff1 in uMenu::OnEnter() ()
#19 0x0000000000469bf0 in MainMenu(bool) ()
#20 0x0000000000411c17 in main ()
Multiplayer

Code: Select all

#0  0x00000000005b7bcc in su_GetJoystick(int) ()
#1  0x00000000005b7edf in su_TransformEvent(SDL_Event&, std::vector<uTransformEventInfo, std::allocator<uTransformEventInfo> >&) ()
#2  0x00000000005b893e in su_HandleEvent(SDL_Event&, bool) ()
#3  0x00000000005c24d4 in uMenu::HandleEvent(SDL_Event) ()
#4  0x00000000005c3737 in uMenu::OnEnter() ()
#5  0x000000000048b225 in do_con() ()
#6  0x0000000000607284 in st_DoToDo() ()
#7  0x00000000005c2ee9 in uMenu::OnEnter() ()
#8  0x0000000000469bf0 in MainMenu(bool) ()
#9  0x000000000046af6d in ingame_menu() ()
#10 0x0000000000607284 in st_DoToDo() ()
#11 0x0000000000466fe0 in sg_EnterGameCore(nNetState) ()
#12 0x000000000046700d in sg_EnterGame(nNetState) ()
#13 0x00000000004675b9 in ConnectToServerCore(nServerInfoBase*) ()
#14 0x0000000000467895 in ConnectToServer(nServerInfoBase*) ()
#15 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#16 0x00000000005c2ff1 in uMenu::OnEnter() ()
#17 0x00000000004acd78 in gServerBrowser::BrowseServers() ()
#18 0x00000000004acf34 in gServerBrowser::BrowseSpecialMaster(nServerInfoBase*, char const*) ()
#19 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#20 0x00000000005c2ff1 in uMenu::OnEnter() ()
---Type <return> to continue, or q <return> to quit---
#21 0x000000000046896f in net_game() ()
#22 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#23 0x00000000005c2ff1 in uMenu::OnEnter() ()
#24 0x00000000005c25b2 in uMenu::HandleEvent(SDL_Event) ()
#25 0x00000000005c2ff1 in uMenu::OnEnter() ()
#26 0x0000000000469bf0 in MainMenu(bool) ()
#27 0x0000000000411c17 in main ()
User avatar
Z-Man
God & Project Admin
Posts: 11587
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: Client Crash

Post by Z-Man »

Hmm, the crashing function doesn't do a lot; the only reason it may crash is if an event for a non-existing joystick comes in. I'll try to catch those cases.
Edit: committed. Please check.
Edit2: hey, wait a minute. You don't have a joystick or gamepad connected, right? So where is the joystick input event that is handled even coming from? Can you check your SDL development installation? Where the headers come from (/usr/local/include/SDL or /usr/include/SDL) and which library is linked (ldd ./armagetronad | grep SDL)?
User avatar
Light
Reverse Outside Corner Grinder
Posts: 1667
Joined: Thu Oct 20, 2011 2:11 pm

Re: Client Crash

Post by Light »

Code: Select all

tom@debian:~/armagetronad/client/bin$ ldd ./armagetronad-experimental | grep SDL
	libSDL_image-1.2.so.0 => /usr/lib/x86_64-linux-gnu/libSDL_image-1.2.so.0 (0x00007fd446c71000)
	libSDL_mixer-1.2.so.0 => /usr/lib/x86_64-linux-gnu/libSDL_mixer-1.2.so.0 (0x00007fd445ef7000)
	libSDL-1.2.so.0 => /usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0 (0x00007fd445c5b000)
User avatar
Z-Man
God & Project Admin
Posts: 11587
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: Client Crash

Post by Z-Man »

And the headers?
ls /usr/local/include/SDL
ls /usr/include/SDL
User avatar
Light
Reverse Outside Corner Grinder
Posts: 1667
Joined: Thu Oct 20, 2011 2:11 pm

Re: Client Crash

Post by Light »

Code: Select all

tom@debian:/usr/include/SDL$ ls
begin_code.h     SDL_cpuinfo.h  SDL_joystick.h  SDL_mutex.h     SDL_syswm.h
close_code.h     SDL_endian.h   SDL_keyboard.h  SDL_name.h      SDL_thread.h
SDL_active.h     SDL_error.h    SDL_keysym.h    SDL_opengl.h    SDL_timer.h
SDL_audio.h      SDL_events.h   SDL_loadso.h    SDL_platform.h  SDL_types.h
SDL_byteorder.h  SDL_getenv.h   SDL_main.h      SDL_quit.h      SDL_version.h
SDL_cdrom.h      SDL.h          SDL_mixer.h     SDL_rwops.h     SDL_video.h
SDL_config.h     SDL_image.h    SDL_mouse.h     SDL_stdinc.h
User avatar
Z-Man
God & Project Admin
Posts: 11587
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: Client Crash

Post by Z-Man »

Well, that looks legit. Can't say what causes the crash, then, but the workaround may work anyway. I'll install current Debian in a VM one of these days.
Post Reply