-
Notifications
You must be signed in to change notification settings - Fork 150
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 startup #333
Comments
that is strange... there must be something strange happening in Sprites_GetSprite() |
there is definitively an issue in Sprites_GetSprite() :
I have :
For MOUSE.SHP and i = 0, src should be 0x22 (34) bytes after buffer. |
@ibara could you check that you have the right data files ? and also build with this patch : miniupnp@d88507b |
see #326 |
Hello. That did not help. How can I check that I have the right data files? |
|
@ibara MOUSE.SHP should start by :
|
OK my DUNE2.EXE checksum doesn't match. Everything else does. So I am going to presume that might be the problem, as you've noted before. |
I just needed to apply the 1.07 patch. Still a segfault though. Will look into it... |
DUNE2.EXE is not used by OpenDUNE. Have you checked the buffer ? |
I am also experiencing a segfault in Sprites_GetSprite that seems MOUSE.SHP related. Here is the backtrace:
Here is the full GDB session: opendune_backtrace_mouseshp.txt This is on commit 411c3a9. I configured with These gamefiles play in DOSBOX (v0.74-3). I can get into the first mission just fine. If the MOUSE.SHP file is wrong, I suggest that the code print some diagnostic information instead of segfaulting. Something like "Invalid or unexpected MOUSE.SHP file: Expected 'X' after ABC (at byte 0xNN), instead got 'Y'". This would make the problem (slightly) less mysterious for the player/user and maybe provide more usable information to put into bug reports. Though it does make me wonder if there is more than one version of the game with different MOUSE.SHP files. If that's the case, it should either parse the other file variant successfully or let us know that we have some incompatible variant of the original game files (and we're out of luck until someone makes a PR or whatever that adds the feature). I would attach the MOUSE.SHP file, but I can't find it. I am noticing that the earlier comment with all of the files and their SHA1 hashes doesn't have a MOUSE.SHP in its list either. Is it inside one of the .PAK files? I'm reluctant to upload all of my game files because it might violate some copyright/DMCA/whatever law, but if you can tell me which file to upload, I imagine it would be acceptable to just upload that one file, and maybe that would help with repro. Thanks! |
All files are inside .PAK. And files from version 1.07 are required. |
My Dune version was 1.0 I couldn't find a v1.0->1.07 patch easily enough (1.07 official to 1.07 unofficial yes, or 1.01 to 1.07, but no 1.0 to 1.07), so I downloaded some gamefiles that were already patched to 1.07. That worked; OpenDUNE starts with those gamefiles. I suggest leaving the bug open until the segfault is replaced with an error message that explains this. This issue is, to my knowledge, the only thing explaining how to fix this problem. That is, of course, assuming there aren't other causes of segfaults... ;) |
please send me the 1.0 files via some way. |
I sent you an email. Thank you! |
HERALD.CPS MISC.CPS AND.CPS TITLE.CPS see OpenDUNE#333
@chadjoan I introduced some compatibility with Dune v1.0 files. |
Upon launching the game on OpenBSD, OpenDUNE immediately segfaults.
gdb backtrace attached.
opendune-gdb.txt
The text was updated successfully, but these errors were encountered: