-
Notifications
You must be signed in to change notification settings - Fork 219
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
Segfault on Archlinux #845
Comments
what revision is this on? |
openspades 0.1.3-1 from aur |
Thanks for the report! Can you provide the backtrace (if possible)? |
(gdb) set logging file gdbtrace.log strace openspades: maybe it's not quite right, but there is definitely something |
@yachmenka Thanks, that'll give us a clearer insight into the problem. The segfault seems to have occurred in the sorting routine ( Listing 1:
Listing 2:
I have no plausible explanation for the memory corruption at the moment, I'm afraid. p.s. If you need a quick work-around, change |
Yeah, thx |
I've been doing some debugging because this has affected me too:
Perhaps the @yachmenka if you change the |
I wonder, does this change if you change the cmake generator? say, adding the |
@NotAFile interesting! Building with the following doesn't result in the above segfault:
Definitely appears to be something odd happening from cmake then? |
Sounds like a bug in cmake's |
@swalladge The command sequence you posted doesn't use the Release configuration. Try "cmake -DCMAKE_BUILD_TYPE=Release -GNinja .." instead. The main difference between RelWithDebInfo and Release is that Release uses -O3 instead of -O2. The more aggressive optimization level could trigger some undefined behaviour somewhere. Possibly in the OS or libstdc++ codebase. At least some older libstdc++ version seemed to have a bug in std::sort. |
@theunknownxy Ah yeah true. It segfaults the same with Release build type and ninja... I think you're right about the optimisation level being the issue. |
The game freezes a second after the appearance of the main screen and crashes.
$ gdb openspades
gdb.txt
Last two lines:
$ valgrind --leak-check=full --show-leak-kinds=all openspades
valgrind.txt
The text was updated successfully, but these errors were encountered: