Hi all
As this old post
http://sourceforge.net/mailarchive/message.php?msg_id=54647.129.16.31.149.1111686341.squirrel%40webmail.chalmers.se describes, the function processExecAsyncTimed crashes when the created process finishes. At least it does on his and mine computer. The following error is written to std. out.:
Process: Prelude.chr: bad argument
I have investigated the problem, but I think I could benefit from some
help.
The Perlude.chr :: Int -> Char function maps integers to chars. It only
accepts integers >= 0 and they must not be too big either (something
like < 10^6).
I suspected that EOF (= -1) might be passed on to Prelude.chr, I
therefore changed the withCharResult function in file
wxcore/src/Graphics/UI/WXCore/WxcTypes.hs to write the integer value
before it was converted by Prelude.chr.
To my surprise, Prelude.chr did not fail on -1 but on -74. Is there
anybody who has an idea why it would -74?
Note, that processExecAsyncTimed actually processes all the output it
should before failing on -74.
I also tried the exec-example from the WxWidgets 2.6.4 (see
http://www.wxwidgets.org/downloads/#previous_stable) download. It did
work. So it seems likely that it is WxHaskell or Haskell -related issue.
Any suggestions are welcome.
Greetings,
Mads Lindstrøm
|