Opened 5 years ago

Closed 5 years ago

#156 closed bug (fixed)

Changing screenmodes while MUI prefs running

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

Description

With older MUI 3.9 it is possible to start MUI prefs, iconify it, change WB screenmode and reopen it.

With MUI 4 under OS3 or OS4 it prevents the system from changing screenmode while it is running.

Under OS4 it causes an infinite loop of automatic attempts to change screenmode.

Change History (5)

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

Component: undefinedImagespace.mui
Owner: set to Thore Böckelmann
Priority: undecidednormal
Status: newassigned

All I got was I locked up AmigaOS4 system, but no infinite loop.

comment:2 Changed 5 years ago by Thore Böckelmann

Regarding AmigaOS3 there is no difference in the code between MUI 3.9 and MUI 4.0.

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

In 4471:

  • Imagespace.c, Application.c: request a notification for a to be closed Workbench as well to flush the images mapped to this screen just like for any other screen. This refs #152 and refs #156.

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

In 4500:

  • Title.c: restore the former background of a child object after it has been drawn to prevent the replacement image to be released too often by Area.mui. This refs #156.

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

Milestone: 4.0-2015R2
Resolution: fixed
Status: assignedclosed

All my recent tests have shown that this issue is fixed by now. On the one hand it was a counter underrun, which caused an image to be flushed too early. On the other hand it was a wrong screen pointer which caused no images to be flushed at all. If the Workbench screen is reopened with a different screenmode/depth it is very likely that the new screen gets exactly the same address as the old screen. If then there are still cached images which refer to the old screen things will go belly up. This is fixed now.

Note: See TracTickets for help on using tickets.