[comp.sys.mac.programmer] HyperCard 2 problem with "on openstack"

rgonzal@elbereth.rutgers.edu (Ralph Gonzalez) (02/06/91)

I have the following problem with HyperCard 2 which is either a bug or
a misunderstanding on my part.  

First I open a resouce fork in a new Hypercard 2 stack called "Tmp"
using ResEdit.  I add a "vers" resouce, or no resource at all.  Then I
quit ResEdit and start HyperCard by double-clicking on the Tmp stack.  Its "on
openstack" handler is NOT invoked at all, and instead I get a "beep".
If, on the other hand, I start HyperCard by double-clicking on
HyperCArd or Home, and THEN open Tmp, then its openstack handler works
fine.  WHY IS THIS?  I don't get this problem if I never open a
resource fork for the Tmp stack.

I can get around the problem by writing an "on startup" handler, but
it seems like there should be a better solution:

    on startup
        pass startup
    end startup

I also tried Apple's Resource Mover in the new Power Tools stack, but
it tends to bomb out on me - anyone else have this problem?

Thanks to anyone who responds,
Ralph
(rgonzal@chowder.rutgers.edu or rgonzal@elbereth.rutgers.edu if it
bounces)

rgonzal@elbereth.rutgers.edu (Ralph Gonzalez) (02/06/91)

Sorry, I just tried a fresh copy of HyperCard 2 and I think the
problem disappears.  So it seems I had a damaged copy or something.
If not then I'll repost.

-Ralph

rgonzal@elbereth.rutgers.edu (Ralph Gonzalez) (02/07/91)

In fact, it wasn't a buggy HyperCard or Home stack, but an init
conflict which was giving me problems.  Here's as near as I can pin it
down:

If you have the Gatekeeper Aid init installed AND you're using
HyperCard 2.0 AND you start HyperCard by double-clicking on a
(non-Home) stack which has it's own resource fork (due to a snd, ICN,
XCMD, etc.) then this stack's "on openstack" handler may not be
executed.  The problem seems to arise in the Home stack's "on startup"
handler which calls a handler which calls the FontExists XCMD.  You
will hear a "beep" if you have this problem.  It only happens with
some versions of the Home stack, depending on at what point the XCMD
is called.

That's the second Gatekeeper Aid conflict I've had in a week, so I'm
removing it and going with Disinfectant init...

-Ralph