The stack in use has to be locked and have a resource fork (new stacks that
have not been created with a copied background have no resource fork). It
does NOT have to contain resources. (It can get into this state by opening
it in ResEdit or by adding and deleting a resource.)
The other stack does not have to be locked.
The Cause
---------
HyperCard is opening a new access path to the stack in use every time you
switch stacks.
To the Macintosh operating system, every time you switch stacks it looks
like you are opening another file. In System 6.0.7, there is a limit of 40
open files (actually, it's 40 open forks), so HyperCard will eventually
refuse to switch stacks. In System 7.0 and later, there is no limit, so
heap space will simply continue to drop until HyperCard runs out of memory.
This behavior is confirmed in HyperCard 2.1 and we know of no workaround.
This article is adapted from the Claris Tech Info database.