>From the experiments with Jon before, I'm pretty sure that the crash
occurs inside the garbage collector. This indicates that the heap is
corrupted, probably when one of the 'gl:Xxxx' function is executed (as
otherwise everything seems to run fine).

The functions in "gl.c" and "glut.c" look fine, however.

What if we insert a call to (gc) between each function call,
to find out at which point the heap gets corrupted?

   (load "@simul/gl/lib.l")
   (gc)

   (glut:Init)
   (gc)
   (glut:InitDisplayMode (| GLUT_SINGLE GLUT_RGB))
   (gc)
   (glut:InitWindowSize 400 400)
   (gc)
   (glut:CreateWindow "Test Window")
   (gc)

   (gl:ClearColor 0.7 0.2 0.2 0.0)
   (gc)
   (gl:MatrixMode GL_PROJECTION)
   (gc)

   ...

We cannot be sure that (gc) crashes immediately, though.
Better would be some heap checking function.

Cheers,
- Alex
-- 
UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe

Reply via email to