Zoom / CocoaGlk crash

My WIP has been running fine in the Windows IDE, in Windows Gargoyle, in Filfre, and in Quixe. However, a friend of mine tested it on Zoom and got the following crash:

This happens about halfway through the game, when the player drops an object. There is nothing odd in the code with respect to dropping the object in that room, except that there’s an action-checking rule after the report rulebook completes that compares the current action to a number of different action possibilities and outputs some text based on what the player did.

I also have some window-manipulation code for a status line exit lister that might also be implicated, I guess, but that seems more farfetched as a cause since that window has been manipulated many times before we get to this point, and the exit list, size, and styles are unchanging at that point.

Does anyone have any idea what might be underlying this issue? I would be grateful for any pointers.

(EDIT: I downloaded the Zoom source code and can’t find any references to glk_window_get_stream at all – not sure if I need another source package to find where this is coming from…)

(EDIT 2: Checked CocoaGlk and found the reference to the glk_window_get_stream call, and it looks like this probably happened very early in the run, and was probably not the proximate cause of the crash…)

What extensions are you using?

(glk_window_get_stream is probably being called by the game or extension code, not by the interpreter. It’s worth figuring out that warning, even if it’s not the cause of this problem, because that warning can be a fatal error on some interpreters.)

I note that Git is up to version 1.2.7, so you might be running into a fixed bug. There were a couple of obscure but crash-worthy bugs in the Glk interface handling, back in earlier versions.

Thanks! I’m using Flexible Windows and the usual Glulx Text Effects, and my code itself uses quite a few I6 inclusions that work with the secondary grid window I’m using for my exit lister. I’ll look through there and see if I can figure out where that warning is coming from.

Is there a good way to display runtime warnings like that using the I7 IDE?

I believe Zoom lets you switch between using Glulxe and Git as the Glulx interpreter: try switching to Glulxe to see if the crash goes away. If your game uses indexed text, the most likely cause is a bug fixed fairly recently in Git, see http://inform7.com/mantis/view.php?id=257

I do use indexed text, so that’s definitely something to check. I just got ahold of a friend’s Mac, so I will test Zoom/Glulxe to see if it works better there. I do know the original tester that reported the issue was able to successfully get past that point in Spatterlight, so there’s another datapoint.

Thanks for your help!

Update – it definitely looks like the Git indexed text bug. Now to fix my code so it doesn’t sling so much indexed text around…

No, hassle Andrew Hunter to update Zoom! There shouldn’t be any need to work around already-fixed bugs in Git :frowning:

I’ll do that too, but with 7 days left before the Comp I don’t think I’m going to be able to manage to get the maintainers to update all the Git 1.2.4-based terps (including Gargoyle, etc.) in time.

Ack, I’ve been asleep at the switch. For some reason, I thought the Comp didn’t start until late October. :blush:

I will get some release candidate builds up in the next few days. Barring any showstopper bugs, they can go final by Oct 1st.

Great news – Gargoyle is my interpreter of choice; the typography is just excellent! Thanks, Ben!

I’ve also contacted Andrew Hunter to ask whether he has a timetable for a new release of Zoom; we’ll see if there’s anything in the works.