-
-
Notifications
You must be signed in to change notification settings - Fork 362
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
Pioneer crash at start #4174
Comments
|
Hmm... works good on my 4.12.13-1-ARCH. Tried to compile exact same version of pioneer and it runs without fails for me. If error still exists, please change line 172 at |
|
I'm having a similar issue with the binary on OSX (compiles ok, blank white window on start and then fails). I've bisected the commit down to commit 5683029 |
|
Here's the full log after e enabling DEBUG_IMPORT https://gist.github.com/Tichy/54d6ee4a816953b1a22522c18f01c056 |
|
First thing @Tichy Second thing @ColdSpirit0:
|
|
Heh... 😉 |
|
I think the autoload.lua fail is working as intended. Returning nil is used as a signal that the lua file should not be used as an import. However, there's an assumption in the import code that files will return exactly one value on the lua stack, while pi_lua_dofile will load files which return zero or multiple values. GalacticView.lua returns nothing, so the lua_isnil check is invalid there and so is the pop. pi_lua_dofile, returns success with any number of return values: Line 838 in a3aeead
_import assuming single return value: Line 504 in a3aeead
|
|
@Tichy thanks! @fluffyfreak it common behaviour; for import it fail, but for caller it mabe ok. Also autoload.lua should not return anything, it is written in that file. Even if I tried to cache nil, I cant compare returned from cache element, it is not exists or 'nil' (not existing elements I getting like nil value). @jaj22 thanks, I will check it tomorrow That debug log from MacOS build (end of log): |
|
The MacOS assert looks like a different issue. I can't find any documentation on |
|
Stack trace from MacOS build: Also put here my log, without errors: pioneer.log |
|
@Tichy your log looks strange for me. It ends on 'success' and no errors after that. Maybe you miss something to copy? Upd:That should be after that success, but it does not output... Made a diff of three logs (my, arch, macos) and see that I have only one thread,maybe that why all work on my system? How I can to enable more threads? |
|
FileDialog.lua also returns nothing (not nil, nothing), so the GalacticView import is already running with a corrupted lua stack. I wouldn't worry about exactly why it's crashing after that. It's inevitable. |
|
@ColdSpirit0 I launched pioneer from both the installed package and the build directory. I can't be sure, but I tend to think that to have something missing I had to delete it myself. In the last test I did nothing but change the #define, make and launch ./pioneer from the src directory. |
|
@Tichy ok then, I just asked to be sure) @jaj22 Im asking for 1 return parameter, I guess Line 316 in a3aeead
Im does not see any logic mistakes in that part of code, but by logs seems it is there. Bad thing I cant reproduce that errors on my system, just dont know how. Tried to enable any debug flags, but I got lost in 'configure' file. Upd:No, debug flags will no help. I edited defines in cpp code and all checks passed. I will try to install pioneer from AUR... Upd 2:Installed game from https://aur.archlinux.org/packages/pioneer-git/ and all works good. |
|
I'm not following this bug, but was asked for a bt, so here goes (latest master, a3aeead): |
|
@ColdSpirit0 open your Thread: |
|
@fluffyfreak thanks. Changing WorkerThreads have no effect to game stability. |
|
I'm also on Arch Linux and Pioneer started crashing after a system update, like so: Downgrading from SDL version 2.0.6 back to 2.0.5 fixed this for me. |
|
I'm guessing pinging @ecraven might be a good idea at this point.
Le mar. 3 oct. 2017 à 20:35, scottyeager <notifications@github.com> a
écrit :
… I'm also on Arch Linux and Pioneer started crashing after a system update,
like so:
import [libs/autoload.lua]: libs/autoload.lua did not return anything
import [ui/FileDialog.lua]: ui/FileDialog.lua did not return anything
fish: 'pioneer' terminated by signal SIGSEGV (Address boundary error)
Downgrading from SDL version 2.0.6 back to 2.0.5 fixed this for me.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#4174 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAkONWflmZzPBLe2D9lvt5CqTMWAYO9Qks5son5jgaJpZM4Pp8-K>
.
|
|
It's a deeper problem than UI code. With SDL 2.0.6, SDL_ConvertSurface is crashing on a simple RGB->RGBA conversion of galaxy_colour.png. I did wonder if the weird/broken surface format code in Pioneer was causing an upwards-compatibility problem, but apparently not. It's likely that the bug isn't in Pioneer code. I'd need to replicate the issue locally with SDL debug libs to be sure. The MacOS crash is unrelated. LuaUtils attempts to load imports as files before core, and ReadFile in FileSystemPosix.cpp is apparently opening the "data/lang" folder as import("Lang"). Best solution may be for ReadFile to check that it's not about to open a folder. It already has an assert for that, but it needs to handle arbitrary import names without falling over. |
|
Ah, SDL 2.0.6 was just released the other day. |
|
Il 2017-10-04 11:39 Andrew Copland ha scritto:
Ah, SDL 2.0.6 was just released the other day.
I probably have updated pioneer and sdl at the same time.
|
|
Yep it's definitely the EDIT: under debug (x64) I also get a crash using |
|
Can anyone build/install a SDL with symbol information get a stack trace (which includes line numbers in libsdl)? I'll do that in ~6 hours, but maybe someone will have a chance to do that earlier? |
|
SDL part of stack trace: Context of line 936: And surface->map is nullptr. I'll look further in ~1 hour. |
|
Seems like a bug in SDL, which was fixed here https://bugzilla.libsdl.org/show_bug.cgi?id=3852 after 2.0.6 release. UPD: and indeed applying https://hg.libsdl.org/SDL/rev/a09c3f87a12f fixes it. |
|
@mooskagh great work! |
|
It's actually @jaj22 who did most of debugging, so credits should go to him. :) There was a suggestion on #SDL to display a error message if we detect unpatched SDL 2.0.6, so that users pinged their distro maintainers to port the fix. |
I couldn't replicate this, so you may want to check whether it still happens with #4177. x64 crashes in the same place as x86 for me (with SDL 2.0.6). |
|
@mooskagh / crem posted: https://discourse.libsdl.org/t/bug-3852-in-2-0-6/23182 regarding if we should expect a bugfix release. |
|
Confirmed: all fine now 👍 |
SDL 2.0.7 in the works: |
|
@zonkmachine thanks, I'll hold off updating the |
|
SDL version 2.0.7 is released: |

After updating my local git repo, I compiled Pioneer but the new version crash as soon as it starts.
Visually I just see the window appear then disappear.
Launching from the terminal I obtain this:
I tried to clone again from remote and compile, and I tried to rename my ~/.pioneer directory to exclude my settings.
My pioneer version (and OS):
ver git (8e90cc7)
Release(Kernel) Version: 4.13.3-1-ARCH
Kernel Build Timestamp: #1 SMP PREEMPT Thu Sep 21 20:33:16 CEST 2017
Machine Arch: x86_64
NVIDIA nasty proprietary drivers ver. 384.90
KDE Plasma 5.10 as DE
The text was updated successfully, but these errors were encountered: