Subject: [clisp-list] Question about begin_callback()/end_callback()

From: Dan Stanger <[email-masked]>
Date: Sun Nov 10 07:21:02 2002

I am having a problem with my gdi module, in particular, a lisp stack
overflow.
The problem occurs when a window is created, which causes a callback
into
clisp.

The flow of control is roughly:

create window which enters a microsoft dll.
windowproc my subroutine which is called by the microsoft dll
funcall which calls the lisp oncreate function.

The funcall causes the lisp stack overflow.

Do I need to add a begin_callback()/end_callback() around the funcall?

This code worked on 2.28, but fails on 2.29/2.30.  Could this be the
problem?
Thanks,
Dan Stanger

---

From: Sam Steingold <[email-masked]>
Date: Sun Nov 10 09:12:03 2002

> * In message <[email-masked]>
> * On the subject of "[clisp-list] Question about begin_callback()/end_callback()"
> * Sent on Sun, 10 Nov 2002 08:20:47 -0700
> * Honorable Dan Stanger <[email-masked]> writes:
>

try replacing the lisp function with something trivial.

> Do I need to add a begin_callback()/end_callback() around the funcall?

I think so.  see lisp_completion() in stream.d which does a call back.

> This code worked on 2.28, but fails on 2.29/2.30.  Could this be the

there is _very_ little difference between 2.28 and 2.29.

if indeed the problem is a change in CLISP, you can pinpoint it by
doing a binary search on CVS (build 2.28, make sure it works, do
cvs co -D 2002-06-01 and check whether it breaks &c).  If you have a
reasonably modern machine, this is 20 minutes to write the script and
then run the script at most 8 times.  You will be done by the end of
the day (and "human time" cost will be about 40 minutes)

-- 
Sam Steingold (http://www.podval.org/~sds) running RedHat8 GNU/Linux
<http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/>
<http://www.mideasttruth.com/> <http://www.palestine-central.com/links.html>
Bus error -- driver executed.