root wrote:
> Apparently the ptys are opened in raw mode and do not interpret the
> control characters but pass them down the pipe to AXIOMsys. However
> the (read) from axiom simply gets the cntrl-D and tries to parse it.
> 
> I'm not really sure how this should be handled. Clearly you don't
> want sman to open up a pty that interprets control characters.
> Nor do you want lisp's (read) to interpret control characters.
> 

It is not the case.  One thing is a bug in sman: when the user
presses ^D\n sman passes "(1) ->\n" (more precisly AXIOMsys
reads what is inside quotes).  AXIOMsys reacts with an error
message (exactly like if user gave this input).  Funny things
happen later: AXIOMsys sits in select loop and gets interrupt
(^C\n) _is_ converted to interrupt.  After return from the
interrupt select is called again and returns ready on file
descriptor 0.  AXIOMsys then executes READ-LINE(CURINSTREAM)
which performs _no_ IO.  My speculation is it that interrupt messed
something with CURINSTREAM. 

All this is based on system trace.  AFAICS when AXIOMsys runs
standalone there is no select loop.  I tried to give "(1) ->\n"
and then ^C to standalone AXIOMsys -- the trace looks quite similar
but AXIOMsys produces reasonable error messages.  Still, giving a
few bad inputs interspesed with ^C, I was able to generate:

   >> System error:
   Caught fatal error [memory may be damaged]

so interrupt handling in GCL probably has some problems.

-- 
                              Waldek Hebisch
[EMAIL PROTECTED] 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to