Lisp HUG Maillist Archive

Stack overflow error - LWWPE

I'm running a win32 message pump (via ffi calling windows' GetNextMessage)
using my own window class and callback to dispatch the windows events to
lisp routines.
I run this from the listener window and after a few minutes I get a dialog: 

dialog:   "An error occurred in no-process switching context".


If I cancel the dialog, it goes away and things keep running. IF I ok it, I
get a dos window with a 
Stack overflow error message.

Doing a traceback yields this at the bottom, very similar to the call chain
that shows when you pull up the  open file chooser dialog but are not quick
enough to get your file selected before it (why?) times out:


runtime:bad-args-or-stack <- mp::invoke-with-process-preempted
mp::loop-sg-wakeup-process <- mp::process-time-expired
mp::time-event-handler <- comon-lisp::internal-stack-overflow
mp::i-process-idle-function <- mp::invoke-with-process-preempted)
(subfunction mp::process-sg-function mp::initialize-process-stack)


What's going on here...somethign wrong with my code or the way its
interacting with the system? 
I'm doubting that my code is blowing the stack, anything I can do to catch
and trap it if I am?

Thanks,

brad


Re: Stack overflow error - LWWPE

Brad Might wrote:

>I run this from the listener window and after a few minutes I get a dialog: 
>
>dialog:   "An error occurred in no-process switching context".
>
>
>If I cancel the dialog, it goes away and things keep running. IF I ok it, I
>get a dos window with a 
>Stack overflow error message.
>
>What's going on here...somethign wrong with my code or the way its
>interacting with the system? 
>  
>
I receive this error all the time from LispWorks. Try this - start 
Lispworks and bring up the 'Open File' dialog. Leave that dialog open 
for a bit and the "An error occurred in no-process switching context" 
message start to appear every so often.

-Luke


Updated at: 2020-12-10 08:50 UTC