RISC OS Open
Safeguarding the past, present and future of RISC OS for everyone
ROOL
Home | News | Downloads | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

Previous|Next

  • Tickets
  • » Ticket #455

Ticket #455 (Fixed)Mon Jun 18 11:33:50 UTC 2018

FilterManager does not notice filtered task dying, so will reattach a filter to random new tasks

Reported by: nemo (145) Severity: Major
Part: RISC OS: Module Release:
Milestone: Status Fixed

Details by nemo (145):

FilterManager ignores Service_WimpCloseDown, and so does not detach filters after their task has quit.

As the filter mechanism only uses undecorated 16bit task handles, such orphaned filters will match the next task to reuse that task index, so a filter will become attached to some random unintended task. eg, quitting ShareFS and running Paint causes this:

Filters should be permanently disabled once the targeted task shuts down, so that they are not called for unintended tasks, and so that a late DeRegisterFilter (issued after the targeted task quits) does not return an ‘Unknown filter’ error.

The event mask is not used for filter matching (when deregistering) so can be modified at will, so can already be used to disable a PostFilter. It would be trivial to add a simple test to the other filters to similarly ignore filters that are completely ‘masked’.

*Filters could list the task name of such filters as ‘Disabled’ to avoid confusion.

Changelog:

Modified by Sprow (202) Mon, January 20 2020 - 13:06:37 GMT

  • Status changed from Open to Fixed

Fixed in Filter-0_29.

  • Comment on, or change status of, this ticket

Previous|Next

Search tickets

Social

Follow us on and

ROOL Store

Buy RISC OS Open merchandise here, including SD cards for Raspberry Pi and more.

Donate! Why?

Help ROOL make things happen – please consider donating!

RISC OS IPR

RISC OS is an Open Source operating system owned by RISC OS Developments Ltd and licensed primarily under the Apache 2.0 license.

Options

  • Tickets
  • New ticket
  • Milestones
  • Subversion: Changesets
  • Subversion: Browse
  • CVS: Revisions
  • CVS: Browse
  • Search

RSS feeds Rss

  • Tickets
  • Everything!
  • More feeds...
Site design © RISC OS Open Limited 2018 except where indicated
The RISC OS Open Collaboa theme is distantly based on the Collaboa default layout

Valid XHTML 1.0  |  Valid CSS

Powered by Collaboa
This site runs on Rails

Hosted by Arachsys