MegaGlest Forum
MegaGlest => Bug reports => Topic started by: tomreyn on 9 January 2013, 16:39:46
-
While connecting my MegaGlest 3.7.1 client running on Ubuntu 12.10 x86_64 to one of Nig's new headless servers ("urg", running r3999 on Windows) using ./megaglest --connect=95.118.165.228:61417 which one player was already connected to, my client ran into a segmentation fault. Checking http://play.mg (http://play.mg) right after the crash I see the game I tried to join has just been started.
~/.megaglest/error.log:
[2013-01-09 17:28:38] Runtime Error information:
======================================================
In [/home/softcoder/Code/megaglest/trunk/source/glest_game/main/main.cpp::handleSIGSEGV Line: 4934] Error detected: signal 11:
Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x771217] line: 0
./megaglest:Glest::Game::handleSIGSEGV(int)address [0x743aff] line: 4939
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f6bb31234a0] line: 0
/usr/lib/x86_64-linux-gnu/libstdc++.so.6:()address [0x7f6bb3a32c2a] line: 0
./megaglest:std::_Rb_tree<std::string, std::pair<std::string const, Glest::Game::ModInfo>, std::_Select1st<std::pair<std::string const, Glest::Game::ModInfo> >, std::less<std::string>, std::allocator<std::pair<std::string const, Glest::Game::ModInfo> > >::_M_insert_unique(std::pair<std::string const, Glest::Game::ModInfo> const&)address [0x7b5313] line: 1179
./megaglest:std::_Rb_tree<std::string, std::pair<std::string const, Glest::Game::ModInfo>, std::_Select1st<std::pair<std::string const, Glest::Game::ModInfo> >, std::less<std::string>, std::allocator<std::pair<std::string const, Glest::Game::ModInfo> > >::_M_insert_unique_(std::_Rb_tree_const_iterator<std::pair<std::string const, Glest::Game::ModInfo> >, std::pair<std::string const, Glest::Game::ModInfo> const&)address [0x7b551a] line: 1217
./megaglest:std::map<std::string, Glest::Game::ModInfo, std::less<std::string>, std::allocator<std::pair<std::string const, Glest::Game::ModInfo> > >::operator[](std::string const&)address [0x7b6d41] line: 0
./megaglest:Glest::Game::MenuStateConnectedGame::refreshTechModInfo(std::string)address [0x7ce934] line: 785
./megaglest:Glest::Game::MenuStateConnectedGame::simpleTask(Shared::PlatformCommon::BaseThread*)address [0x7d8e3d] line: 1014
./megaglest:Shared::PlatformCommon::SimpleTaskThread::execute()address [0xaf10f7] line: 451
./megaglest:Shared::Platform::Thread::beginExecution(void*)address [0xb23f4f] line: 81
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f6bb6f71196] line: 0
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7f6bb6fb1e49] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:()address [0x7f6bb6d48e9a] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone()address [0x7f6bb31e0cbd] line: 0
-
If you are able to reproduce try svn rev#: 4000
-
I haven't been ble to reproduce this since, will consider it fixed unless we learn otherwise. Thanks.
-
This was also reported by Jammy today on 3.11.1 at
http://pastebin.com/y0VVyGu6 :
megaglest v3.11.1
Compiled using: GNUC: 40603 [64bit] on: Mar 9 2015 01:41:19 platform: Linux-X64 endianness: little
GIT: [Rev: 5090.7f21f4c] - using STREFLOP [SSE] - [no-denormals]
In [/home/megaglest/gitglest/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5673] Error detected: signal 11:
Error saved to logfile [/home/<user>/.megaglest/error.log]
*ERROR* [2015-11-09 23:43:29] In [/home/megaglest/gitglest/megaglest-source/source/glest_game/main/main.cpp::handleRuntimeError Line: 641] [In [/home/megaglest/gitglest/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5673] Error detected: signal 11:
] gameInitialized = 1, program = 0x2e6b4b0
*ERROR* [2015-11-09 23:43:30] In [/home/megaglest/gitglest/megaglest-source/source/glest_game/main/main.cpp::handleRuntimeError Line: 660] [In [/home/megaglest/gitglest/megaglest-source/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5673] Error detected: signal 11:
Stack Trace:
/data/<user>/megaglest/megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x6f7ef8] line: 651
/data/<user>/megaglest/megaglest() [0x6f817f]address [0x6f817f]
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7fdb5893a2f0] line: 0
/data/<user>/megaglest/megaglest() [0x83d98a]address [0x83d98a]
/data/<user>/megaglest/megaglest:Glest::Game::MenuStateConnectedGame::refreshTechModInfo(std::string)address [0x83eb2e] line: 918
/data/<user>/megaglest/megaglest:Glest::Game::MenuStateConnectedGame::simpleTask(Shared::PlatformCommon::BaseThread*, void*)address [0x84841d] line: 1136
/data/<user>/megaglest/megaglest:Shared::PlatformCommon::SimpleTaskThread::execute()address [0xaea8fc] line: 561
/data/<user>/megaglest/megaglest:Shared::Platform::Thread::beginExecution(void*)address [0xb3f94f] line: 297
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7fdb5c250f48] line: 0
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0:()address [0x7fdb5c290d79] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:()address [0x7fdb5c0276aa] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone()address [0x7fdb58a0beed] line: 0
]
Segmentation fault (core dumped)
... and some years ago (not sure by whom) on 3.6.0.3 at http://pastebin.com/BxNM5jkJ :
[2012-03-04 18:56:57] Runtime Error information:
======================================================
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:
Stack Trace:
./megaglest:Glest::Game::handleSIGSEGV(int) address [0x6d45c2] line: 657
/lib/x86_64-linux-gnu/libc.so.6:() address [0x7fd89088fd80] line: 0
./megaglest:std::map<std::string, Glest::Game::ModInfo, std::less<std::string>, std::allocator<std::pair<std::string const, Glest::Game::ModInfo> > >::operator[](std::string const&) address [0x729d0d] line: 0
./megaglest:Glest::Game::MenuStateMods::refreshTechModInfo(std::string) address [0x704311] line: 506
./megaglest:Glest::Game::MenuStateMods::simpleTask(Shared::PlatformCommon::BaseThread*) address [0x7140c8] line: 545
./megaglest:Shared::PlatformCommon::SimpleTaskThread::execute() address [0x99f327] line: 365
./megaglest:Shared::Platform::Thread::beginExecution(void*) address [0x9c3e9f] line: 81
/usr/lib/libSDL-1.2.so.0:() address [0x7fd8935d3875] line: 0
/usr/lib/libSDL-1.2.so.0:() address [0x7fd893616049] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:() address [0x7fd8933acd8c] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone() address [0x7fd89094204d] line: 0
-
I have had this problem numerous times, but it occurs very infrequently.
The recent occurrence of it I had (that tomreyn posted above), was straight after I successfully connected to titi's server. This bug usually happens when I connect to a server.
I currently have no idea what the cause of this bug is, but after describing the bug in the irc, tomreyn mentioned:
[00:12] <tomreyn> so you probably lacked some mod which was attempted to be downloaded when you connected to titi's server
This seems like a plausible hypothesis.
Maybe this bug is reproducible by getting a client to reconnect to a server multiple times, and changing the mods active(preferably to a mod the client doesn't have/ where the mod is slightly different to the client) before every reconnection. I don't have any definite method of reproducing this bug.
-
This is possibly not related because it occurred at a different time, but when filux were in a server, filux clicked "play" (megaglest 3.12dev, git Rev: 5255.2b06670), and my game crashed again:
Stack Trace:
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x55abfcd4c20d] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Glest::Game::handleSIGSEGV(int)address [0x55abfcd4c7c5] line: 0
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f2eafa072f0] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, Glest::Game::ModInfo, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, Glest::Game::ModInfo> > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)address [0x55abfce46c50] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Glest::Game::MenuStateConnectedGame::refreshTechModInfo(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)address [0x55abfce95a20] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Glest::Game::MenuStateConnectedGame::simpleTask(Shared::PlatformCommon::BaseThread*, void*)address [0x55abfce97b40] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Shared::PlatformCommon::SimpleTaskThread::execute()address [0x55abfd136ec4] line: 0
/data/<user>/megaglestdev/megaglest-source/mk/linux/megaglest:Shared::Platform::Thread::beginExecution(void*)address [0x55abfd188ad8] line: 0
/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0:()address [0x7f2eb3828d7c] line: 0
/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0:()address [0x7f2eb3874419] line: 0
/lib/x86_64-linux-gnu/libpthread.so.0:()address [0x7f2eb359b6aa] line: 0
/lib/x86_64-linux-gnu/libc.so.6:clone()address [0x7f2eafad8eed] line: 0
]
Segmentation fault (core dumped)
I know that straight after an online game is started, is another common time when I have run into a segfault, but there's a good chance it's unrelated to this particular problem.