GNOME Bugzilla – Bug 164638
Aisleriot click-to-move allows invalid moves
Last modified: 2012-01-31 23:32:03 UTC
[ forwarded from http://bugs.debian.org/268734 - still reproducible with 2.8.2 ] http://people.debian.org/~jbailey/badspider.png shows a copy of me picking up and moving a suit that I should really not be permitted to move. The trick to picking up the cards seems to be in click-to-move mode where you click just above the line of the card right in the middle. I can also reproduce this in the regular spider game, but I cannot reproduce this in Freecell.
Actually, seems it's triggered by clicking down on a valid card while the release happens on the cards above it.
Looks like it applies to all of aisleriot. (Including Freecell.)
Yes, it applies to all of aisleriot. The truth is I have known about it for three months, but have avoided doing anything about it because the problem is in a piece of code which scares me. Because of the fragility of the code involved this may be a post-2.10 fix if it involves too much fiddling.
Fixed in CVS by moving the check for a valid sequence further out in the code. It turns out that the double click code had a fall-back for click-to-move to allow a quick pickup when double-click didn't make sense. Unfortunately it didn't check that the sequence was a valid one before doing so. The code is now a bit cleaner.
This bug is being reassigned to the "general" component so we can close the aisleriot bugzilla component. Apologies for the mass email!