Segmentation fault after 2nd reload from tape

Found a bug in R'n'D? Report it here!

Moderators: Zomis, Flumminator

Post Reply
BryanFRitt
Posts: 34
Joined: Mon Nov 13, 2017 4:16 pm

Segmentation fault after 2nd reload from tape

Post by BryanFRitt » Sun Apr 15, 2018 2:58 am

I found a tape ~/.rocksndiamonds/tapes/sp_infotron/043.tape that gives a 'Segmentation fault' after the 2nd F2 reload(sometimes more). It also appears that sometimes there's an extra 'Murphy'(, if a death occurs in-between?).
Originally created(and 'Segmentation fault's) with version 4.0.1.4.
'Segmentation fault' still occurs when playing the tape with the newer 4.1.0.0. version.
Also 'Segmentation fault's with 4.0.1.1.

Note: using 64-bit Debian Stable 9.x.
SUPAPLEX INFOTRON Level 043
Attachments
CrashAfter2ndReLoad043.tape
(180 Bytes) Downloaded 14 times

User avatar
Holger
Site Admin
Posts: 2904
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Re: Segmentation fault after 2nd reload from tape

Post by Holger » Tue Apr 17, 2018 1:19 pm

Thank you for not only reporting this bug, but also for making it perfectly easy to reproduce it using the tape and your very good description.

I was able to reproduce it on my system, and also to find the cause for this bug, which will hopefully be fixed very soon!

BryanFRitt
Posts: 34
Joined: Mon Nov 13, 2017 4:16 pm

Re: Segmentation fault after 2nd reload from tape

Post by BryanFRitt » Wed Apr 18, 2018 11:18 pm

[in case just one sample isn't good enough]
Found another tape that causes 'Segmentation fault' the same way.
~/.rocksndiamonds/tapes/sp_infotron/048.tape
This time started with the 4.1.0.0. version of Rocks'n'Diamonds.
I also finished the rest of the level continuing from this tape. (after backing up the bad tape)
Didn't do the reload reload tape, but reloaded and played some, and saved it again, and continued from there.
I've attached these tapes to this post.
[Edit: Depending upon your perspective; It's possible good shouldn't be called good. :) ]
Attachments
Good048.tape
(1.76 KiB) Downloaded 12 times
CrashAfter2ndReLoad048.tape
(920 Bytes) Downloaded 12 times

BryanFRitt
Posts: 34
Joined: Mon Nov 13, 2017 4:16 pm

Re: Segmentation fault on pressing 3 after reload

Post by BryanFRitt » Sat Apr 28, 2018 4:37 pm

Not sure if this is the same bug or not:

I was playing a level that requires more precise timing of input than I could easily do. Besides setting the 'GAME SPEED' to 'VERY SLOW', I found that the game will go even slower after I press '3'. So I did this for this level. From this tape after restoring with 'F2' (QUICK LOAD GAME FROM TAPE), then pressing 3 can cause a segmentation fault.

From the menu it looks like '3' is set to 'PAUSE / UNPAUSE TAPE'. In '--debug' mode when '3' is pressed Terminal outputs 'rocksndiamonds: frame delay == 125 ms (max. 8 fps / 16 %)'

'SULPS LEVELS' Level '040'
~/.rocksndiamonds/tapes/Sulps levels/040.tape

Using the same system as before
amd64 Debian Stable 9.x
Rocks'n'Diamonds 4.1.0.0
Attachments
bad040.tape
~/.rocksndiamonds/tapes/Sulps levels/040.tape
(147 Bytes) Downloaded 9 times

BryanFRitt
Posts: 34
Joined: Mon Nov 13, 2017 4:16 pm

Re: Segmentation fault after 2nd reload from tape

Post by BryanFRitt » Thu May 03, 2018 12:06 pm

Murphy in transition state not saved on or recalled from tape?
Pause in the middle of moving Murphy to new a position, save tape state, exit level, reload tape, Murphy will be paused at the new position instead of paused in transition to the new position.
You can also do this without pausing too, if you save tape quick enough.

This may result in a segmentation fault in some cases, like when something might have fallen after Murphy moved to the the new spot, or this is done several times.

Note: Post Copied over from Saving/loading with F1/F2 may result in broken tapes

Post Reply