Jun 12, 2025, 05:31 AM | |
Using the jjLAYER constructor to copy eventually causes access violation in Rivellon
Make a mutator just with this snippet:
Code:
array<jjLAYER@> layerOrderings; void onLevelBegin() { layerOrderings = jjLayerOrderGet(); for (uint i = 0; i < layerOrderings.length(); i++) { jjLAYER@ copy = jjLAYER(layerOrderings[i]); } } Tested with JJ2+ v6.0a in Windows 10. |
Jun 14, 2025, 06:28 PM | |
I haven't had any time to look into this yet (and I'm guessing the true is same for everyone else), but this is a good report, crashing at the same address can't be too hard to track down probably, thank you.
|
Jun 17, 2025, 10:42 AM | |
Okay! It looks like the jjLAYER copy constructor was confusing widthReal and widthRounded, trying to read unrelated memory. The extra memory it read never got used for anything, so there was no way to observe the issue except for this apparently very occasional crash. Fixed in 6.0b.
|
![]() |
«
Previous Thread
|
Next Thread
»
Thread Tools | |
|
|
All times are GMT -8. The time now is 12:08 AM.
Jazz2Online © 1999-INFINITY (Site Credits). Jazz Jackrabbit, Jazz Jackrabbit 2, Jazz Jackrabbit Advance and all related trademarks and media are ™ and © Epic Games. Lori Jackrabbit is © Dean Dodrill. J2O development powered by Loops of Fury and Chemical Beats. Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Original site design by Ovi Demetrian. DrJones is the puppet master. Eat your lima beans, Johnny.