------------------------ AmigaOS 3.2 project -------------------------

Changes for release 47.1 (29.4.2019):

    - Initial release containing only test code to validate 
      dos/VolumeRequestHook() functionality

Changes for release 47.2 (12.5.2019):

    - Added "Assign" and "Deny" code

Changes for release 47.3 (19.5.2019):

    - Changed button order, "Cancel" is now the rightmost button

    - Changed task name to "<< AssignWedge >>"

    - Exposed global data (including denied volume list) via
      task->tc_UserData

Changes for release 47.4 (1.6.2019):

    - Added version string

    - Fixed double volume requests

Changes for release 47.5 (26.8.2019):

    - Forbid() while reading "denied requests" list

    - Fixed list iteration bug

Changes for release 47.6 (29.9.2019):

- Fixed a couple of race conditions:

  - in case the target signal was already set when
    running into the hook, the wedge function would return
    immediately instead of waiting for the reply port
  - the access to the port is now protected by Forbid()/Permit()
    which silences PatchWork and avoids races of the port going
    away at the wrong moment.
  - Still pending requests are now answered before going down.
  - The wedge message is now created on the stack, requiring only
    a minimal extra amount of stack.
  - In case the wedge process runs into its own wedge, the result
    is immediate and the process does not attempt to wait for
    itself.
  - Device name matches are now case-insensitive.

Changes for release 47.7 (13.10.2019):

- Fixed a bug that caused AssignWedge to loop forever when accessing
  a denied volume (see ticket #932)

Changes for release 47.8 (28.2.2020):

- Added a QUIT command line argument to terminate an already running 
  instance of AssignWedge

- Proper handling of Workbench start

- No longer leaves a trashed shell process name on exit after being
  started as a foreground process (Who does this anyway? And why?)

Changes for release 47.9 (12.4.2020):

- Dynamic size for volume names in DeniedRequest

- Removed a few code shortcuts

- Moved WBenchMsg stuff to init()

- Tried to make Forbid() / Permit() stuff more readable

- Added locale support

- Defer opening ASL until the user hits the Assign button for the first time (reduce memory usage)

assignwedge 47.10 (23.5.2020)

- Replaced the GetString() lookup function for the ID/string block data
  which would fail if the ID to be looked up was not found.

assignwedge 47.11 (6.6.2020)

- Removed a surplus Permit() call

- Title of Asl requester is now localized

assignwedge 47.12 (6.9.2020)

- Preload localized texts for EasyRequest to eventually avoid deadlock situations

- Shuffled some Forbid() / Permit() calls around

assignwedge 47.13 (16.9.2020)

- Added OpenLocale(NULL) call

assignwedge 47.14 (11.3.2021)

- Reverted deferral of opening ASL change which was implemented in 47.9 because assignwedge freezes
  if ramlib needs to load asl.library from disk at that time.
