Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#129 closed bug (fixed)

Animals demo crash badly at exit

Reported by: Samir Hawamdeh Owned by: Thore Böckelmann
Priority: normal Milestone: 4.0-2015R1
Component: Configdata.mui Version: 4.0-nightly build
Severity: minor Keywords:
Cc: OS Platform: AmigaOS4
Blocked By: Blocking:
Release Notes:

Added a validity check for config IDs to be filtered by the MUIM_Configdata_Filter method. Invalid IDs could have caused a read-only access within invalid memory regions.

Description

The Animals demo in "Demos" folder crash badly at exit.

It also create an external output when you select the various items, but maybe this is normal

defaults 00428001
defaults 00428002
defaults 0042c003
defaults 00428004
defaults 00428006
defaults 00428005

Tested in latest MUI4 nightly r4356

Attachments (2)

Crashlog_Animals_2014-12-20_15-05-33.txt (31.1 KB) - added by Samir Hawamdeh 5 years ago.
Crashlog_Animals_2015-01-08_00-02-35.txt (31.7 KB) - added by Samir Hawamdeh 4 years ago.

Download all attachments as: .zip

Change History (16)

comment:1 Changed 50 years ago by Samir Hawamdeh

Status: pendingnew

Changed 5 years ago by Samir Hawamdeh

comment:1 Changed 4 years ago by Thore Böckelmann

The output is desired (look at the source code in the SDK for details).

Does the crash happen every time or was this just a one time crash? At least on OS3/WinUAE everything is working perfectly. I still have to try this myself on AmigaOS4.

comment:2 Changed 4 years ago by Samir Hawamdeh

@Thore

Mmm curious, i retried with the latest MUI4 build and now it doesn't crash anymore, maybe on that moment my machine was in a "strange" state …

I will retry later with more calm

comment:3 Changed 4 years ago by Thore Böckelmann

Component: undefineddemos
Priority: undecidednormal
Status: newpending

comment:4 Changed 4 years ago by Thore Böckelmann

Any news on this issue? Or has it been a one time crash?

comment:5 Changed 4 years ago by Samir Hawamdeh

@Thore

I was able to reproduce the issue in this method:

1 - I double clicked on the Animal demo, the i clicked on the big button (Settings…) in order to start this demo

2 - I changed casually the value of the various sliders in "Birds", "Mammals" etc

3 - Then i open the Settings button and i clicked on "Last Saved" or "Restore" in order to reset my changes

At this point the demo crashed, i've retry with the very latest snapshot of MUI4 but i wasn't able to reproduce it, strange !

comment:6 Changed 4 years ago by Thore Böckelmann

I managed to reproduce this issue with a build done by a cross compiler but not yet by a native build. And even on AmigaOS3 there is no memory corruption happening, no matter how many options I modify and reset back to default values.

Please do me a favour and try the debug version of muimaster.library. So far you don't need to set any special ENV variable. The debug version also contains more debug information which get included in the crash log. Perhaps that is enough already to track down this corruption.

Changed 4 years ago by Samir Hawamdeh

comment:7 Changed 4 years ago by Samir Hawamdeh

Ok i've installed the debug version, after many trying i was able to make it crash again.
I'm not sure if it make any difference as the crash seems quite similar, aniway check the attach above

comment:8 Changed 4 years ago by Thore Böckelmann

In 4382:

  • Configdata.c: added some debug output to the MUIM_Configdata_Filter method. This refs #129.

comment:9 Changed 4 years ago by Thore Böckelmann

Owner: set to Thore Böckelmann
Resolution: fixed
Status: newclosed

In 4383:

  • Configdata.c, demos/Animals.c: make sure that the ID to the filtered by the MUIM_Configdata_Filter method is within the valid range for further tests. Otherwise the test for a valid key file might access invalid memory regions and hence cause crashes. The closes #129.

comment:10 Changed 4 years ago by Thore Böckelmann

Component: demosConfigdata.mui
Milestone: MUI 4.0-2014R6
Release Notes: modified (diff)

comment:11 Changed 4 years ago by Thore Böckelmann

Please check if the issue is really fixed. So far I was able to test it on AmigaOS3 only. Unfortunately the crash could never happen there, because access to invalid memory addesses will cause a a crash only if very certain addresses are accessed. But in general the invalid access happend withing valid addresses.

comment:12 Changed 4 years ago by Thore Böckelmann

Milestone: MUI 4.0-2014R6MUI 4.0-2015R1

Milestone renamed

comment:13 Changed 4 years ago by Thore Böckelmann

Milestone: MUI 4.0-2015R14.0-2015R1

Milestone renamed

Note: See TracTickets for help on using tickets.