Unhandled, handled exception

A customer is reporting what appears to be an unhandled out of bounds exception

My log file gets this:

Tuesday, March 20, 2018 XojoFramework$6981
Tuesday, March 20, 2018 XojoFramework$6146
Tuesday, March 20, 2018 memoryGetByte
Tuesday, March 20, 2018 MemoryBlock.Byte%i8%oi8
Tuesday, March 20, 2018 DesignWindow.DesignWindow.DrawThing%%o<DesignWindow.DesignWindow>i8i8

Wednesday, March 21, 2018 Unhandled exception: will try to continue.
Wednesday, March 21, 2018 RaiseOutOfBoundsException
Wednesday, March 21, 2018 XojoFramework$8582
Wednesday, March 21, 2018 MyApp.NewFile%%obb
Wednesday, March 21, 2018 MyApp._FileNew_Action%b%o
Wednesday, March 21, 2018 XojoFramework$6227

There is no explicit ‘getByte’ call in my code, but I have a large memoryblock and I access it as a byte array
I trap that in a try/catch, so Im not sure how this ends up in unhandled exception…

A couple of questions:

What are XojoFramework$6981 and XojoFramework$6146 ?
How can I stress test the Mac by pretending the memory is 8Gb instead of my 16Gb (maybe its out of memory issues)
Anyone else getting similar in 64bit builds?

Your code in

DesignWindow.DesignWindow.DrawThing%%o<DesignWindow.DesignWindow>i8i8

Uses a memoryblock with Byte function?

[quote=379908:@Jeff Tullin]How can I stress test the Mac by pretending the memory is 8Gb instead of my 16Gb (maybe its out of memory issues)
Anyone else getting similar in 64bit builds?[/quote]
You could build a ram disk to use up some of your ram.

[code]Public Sub CreateDisk(SizeGB as Double, Name as string)
dim bytes as integer = SizeGB * 1024
dim blockSize as integer = 2048 * bytes
dim cmd as string = “diskutil erasevolume HFS+ '” + name + "’ hdiutil attach -nomount ram://" + str(blocksize,"0") + ""

dim sh as new shell
sh.Execute cmd

dim result as string = sh.Result

End Sub[/code]

Yes.
As far as I can see, every access to the memory block has a try…catch around it in case of out of bounds.

I use it as a 2 dimensional array.
So if it was 10 x 10, the required byte would be derived as .byte(x * 10 + y)
If x or y is a rubbish value (high or negative for any reason), then out of bounds would happen.
I could wrap it up in IF statements, but that would add processing time.
I feel sure that a try catch is faster than IF >=0 and <=maxvalue then

Nice.
I’ll give that a try.