View Single Post
Old 23 November 2019, 14:06   #6
Olaf Barthel
Registered User
 
Join Date: Aug 2010
Location: Germany
Posts: 532
Quote:
Originally Posted by Leandro Jardim View Post
Yeah, if you press LAMIGA+M while you are dragging you will be able to resize the "rubber band" in opposite direction and this will sooner or later crash the Amiga OS.

Learned that in my days of Amiga 500. Good times...
This was a bug in the Intuition state machine. Timer and input events (keypresses, mouse movements, mouse clicks) flow through Intuition, and what actions are permissible is defined by what conditions the current state allows.

For example, pressing the left mouse button while the pointer is within the area of the window title bar transitions to a state which allows you to move the window around. As you move the mouse, a rectangle is redrawn which stands in for the window, respecting the boundaries of the screen. You leave this state when you let go of the left mouse button, which cleans up the rectangle and moves the window.

Because shouldn't be able to flip through the screens while you are dragging a window around, Intuition should have ignored the Amiga+M and Amiga+N keys, but these slipped through (the state transition table has "default actions" for events which are not specifically covered or restricted). While Intuition didn't leave the window dragging state, it still called code in the handler functions which responded to the Amiga+M and Amiga+N input events. For one thing, this broke the window position and size validation (clipping).

This bug was eventually fixed in Kickstart 2.0.


Speaking of entertaining bugs which lead to major desasters in the day, consider this: in the Workbench (1.1-1.3) open a drawer which contains a subdirectory, then drag the parent drawer into its subdirectory. This shouldn't work, should it?

Now close the window of both the parent drawer and of the subdirectory you dragged the parent drawer into.

What happened? You just deleted the parent drawer and all its contents.

This bug used to be ridiculously easy to trigger if your left mouse button was unreliable (because it was worn out). You'd start dragging a drawer to a different place and midway the left mouse button no longer stayed pressed. Then Workbench would either move it or copy its contents. Sometimes a drawer was moved into one of its subdirectories, and you didn't notice that it had wound up in the wrong place. Then you closed the many windows you had open to figure out where it went.

You could level up the degree of desaster you found yourself in by using the always reliably "Disk Doctor", but then back in the day your choices were extremely limited...
Olaf Barthel is offline  
 
Page generated in 0.16086 seconds with 11 queries