
Hi, Jason.
I don't know how to mark the call unsafe. And I don't know what is a *Nix (perhaps unix?). I am running the main program on Windows. Here is the compilation script:
ghc -fglasgow-exts serial.c %1.hs -L./ -ljapi --make
erase *.hi
erase *.o
strip %1.exe
BTW I figure out that passing an argument to closecport only makes the problem occur less often. Here is an example:
D:\ghc\sensors>strip temper.exe
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
4
D:\ghc\sensors>temper.exe
unable to set comport cfg settings
4
--- On Mon, 11/9/09, Jason Dusek