[erlang-bugs] R13B TTY bug on mac os x

Geoff Cant <>
Thu Apr 23 23:47:56 CEST 2009


Hi all, I've just realised that when I start erl on Mac OS X (10.5) I
get erlang's oldshell instead of the regular shell.

The behaviour was correct (user_drv, not user) in R12B5 and seems to be
broken in R13A and R13B.

When running user_drv:start() in R12B5 I get:
2> user_drv:start().
<0.35.0>
3> 
=ERROR REPORT==== 23-Apr-2009::23:41:26 ===
Error in process <0.35.0> with exit value: {badarg,[{erlang,register,[user,<0.37.0>]},{user,start_port,1}]}


=ERROR REPORT==== 23-Apr-2009::23:41:26 ===
driver_select(0x000001a9, 0, DO_READ, 1) by fd (0/1) driver #Port<0.425> stealing control of fd=0 from input driver tty_sl (tty_sl -c -e) #Port<0.233> 

On R13B I get:
1> user_drv:start().
<0.34.0>
2> 
=ERROR REPORT==== 23-Apr-2009::23:21:54 ===
Error in process <0.34.0> with exit value: {badarg,[{erlang,register,[user,<0.35.0>]},{user,start,0}]}

2> 
=ERROR REPORT==== 23-Apr-2009::23:21:54 ===
driver_select(0x000001b1, 0, ERL_DRV_READ ERL_DRV_USE, 1) by fd (0/1) driver #Port<0.433> stealing control of fd=0 from input driver fd (0/1) #Port<0.252> 

In the R13B version I can see that the fd driver is stealing from the fd
driver, while in R12B5 the fd driver is stealing from the input driver,
which suggests to me that the tty_sl driver isn't functioning correctly
in R13B.

How do I go about debugging this? Can I spawn the tty_sl driver manually
to check to see if it's working?

Cheers,
-- 
Geoff Cant




More information about the erlang-bugs mailing list