[comp.sys.mac.hypercard] ASK PASSWORD Bug in HC 2.0?!?!

jkc@Apple.COM (John Kevin Calhoun) (01/09/91)

In article <1991Jan8.160347.2747@fennel.cc.uwa.oz.au> ciru@fennel.cc.uwa.oz.au
(Mike Schon-Hegrad) writes:

>         ...I believe I've discovered a bug which I feel is quite
>serious/limiting.

>If you click on the "Cancel" button after you have entered text into the box
>Hypercard still encrypts what was in the box and returns that in the "it"
>variable.  

>So the problem is that this bug prevents you from determining whether someone
>has decided to click "Cancel" after they have typed something into the box and
>you can't distinguish this from a real password.

>2 questions I would please like answered (if possible) depending on the
>awareness of this problem.
>
>   1.  Can someone suggest a tempory way around it till it is fixed?

If the user clicks "Cancel", then the result contains "Cancel".

>   2.  Is there a fix in Hypercard 2.x?  Is that version of Hypercard
>available yet?

The bug is fixed in HyperCard 2.0v2, available from Claris.

Kevin Calhoun
HyperCard Team
Apple Computer, Inc.

jlc@atux01.UUCP (Jim Collymore) (01/09/91)

I found the same problem by accident when testing the "ask password" command
just 2 weeks ago.  I need to be able to have someone be able to click "OK" (or
hit return) or "Cancel" and not have "it" populated with an encrypted
equivalent for those actions.

I would also like to know if there is going to be a fix for this.  

						Jim Collymore

dmittman@beowulf.JPL.NASA.GOV (David Mittman) (01/10/91)

As with most of the dialog facilities in HyperCard, the "ask
password" command returns the password in "it" and the button
click in "the result". Always check "the result" to find out
how the user ended their interaction with the dialog. If the
user canceled, "the result" will contain "Cancel". If the user
exited normally, "the result" will be empty. I believe that
an empty result will always be indicative of a normal exit.
If an error occurs (Cancelling is considered and "error") then
"the result" should be assigned a value.		- David