crash when moving between stacks (again)
Nicolas Cueto
niconiko at gmail.com
Tue Mar 8 18:43:08 EST 2011
Dear List,
Posted this back in June. Got no reply. But am posting gain, in hopes.
In short, one of my more convoluted Rev creations keeps crashing
when some of its stacks close.
It's a combination of stacks. Here are the pieces:
- standalone-stack (holds the engine)
- central-stack (for game-stack selection)
- game-stacks (a myriad of these, some of them with substacks)
Crashes happen when a game-stack is closed to return to the central-stack.
Moreso for some game-stacks than others.
I double checked that every stack, substack, and card has a
preopen/open/close handler, even if this is empty.
I thought it may be a memory issue, cause the game-stack that almost
always crashes has many URL-referenced image objects and runs on older
Win machines. However, I tested on a newer machine with ample memory
and cpu power, but still get crashes.
Below is an outline of the scripted inter-relation between stacks. Perhaps
someone will spot something I've overlooked
Thank you.
--
Nicolas Cueto
------ S T A R T O F S C R I P T S -----
/* In the card script of STANDALONE-STACK,
this handler sets stackFiles and then goes to
stack CENTRAL-STACK. */
on setUpTheFoundation
start using stack "STANDALONE "
put "GAMESTACK1,gamestack1.rev" & cr & "GAMESTACK2,gamestack2.rev"
& cr & ... \
& "animationEngine,animationEngine.rev" into tStackFiles
set the stackFiles of stack "niconiko" to tStackFiles
## Set the globals used by all stacks
open stack "CENTRAL"
hide stack "STANDALONE"
end setUpTheFoundation
/* In stack script of CENTRALSTACK. */
on closestack
quit
end closestack
/* In a go-to-gamestack button script on
CENTRALSTACK./
on mouseUp
open stack GAMESTACK
hide stack CENTRALSTACK
end mouseUp
/* In the stack script of BAD-GAMESTACK */
on closeStack
## Reset custom props of some grouped objects.
## Clear pending messages
## Clear the cachedURLs.
set the lockScreen to true
## Set to empty the filename of 100 images.
set the lockScreen to false
go to card "main" of stack "gss"
show stack "gss"
delete stack "blitz"
end closeStack
/* In the card script of BAD-GAMESTACK, which script
calls up the NAVIGATION-SUBSTACK that can take
user back to CENTRALSTACK. */
on rawKeyUp theKey
switch theKey
case "56"
modal stack NAVIGATION-SUBSTACK
pass rawKeyUp
exit rawKeyUp
exit to top
break
end switch
end rawKeyUp
on closecard
## Clear the cachedURLs.
## Cancel pending messages.
## Reset custom props.
## For each of 100 image objects:
## reset filename to "", outerglow,
## and innerglow.
## Close the socket connection to
## the local server.
end closecard
/* In the card script of NAVIGATION-SUBSTACK. */
on rawKeyUp theKey
put "49,50,51,52" into tGameControllerRightsideButtons
if theKey is not among the items of tGameControllerRightsideButtons then
pass rawKeyUp
exit rawKeyUp
end if
## Find which navigational image is on.
switch tCurentlyOnImage
case "quit"
send "closeStack" to stack BAD-GAMESTACK in 2 seconds
close this stack -- i.e., NAVIGATION-SUBSTACK... should I
name the stack explicitly here?
exit to top
break
end switch
end rawKeyUp
------ E N D O F S C R I P T S -----
More information about the use-livecode
mailing list