DMD 2.055 Crashing on Windows 7 x64 (So is my D program)
Mehrdad
wfunction at hotmail.com
Mon Sep 26 14:30:42 PDT 2011
On 9/26/2011 1:51 PM, Steven Schveighoffer wrote:
> AHA!
>
> Yes, there is a bug in snn.lib regarding pipes. And I fixed it,
> waiting for Walter to incorporate it :) I needed it for the new
> std.process.
>
> What it comes down to is, DMC's FILE * implementation does not expect
> some of the quirks of pipe HANDLEs. For instance, if you open a FILE
> * around a pipe handle, it still tries to do a seek on that handle,
> and crashes. Also, when the write end of a pipe is closed, reading
> from the read end results in EPIPE from ReadFile, but this is
> translated to EBADF by the runtime. Therefore, FILE * sets an error
> instead of EOF.
>
> Is the email address you have for this message correct? If so, I can
> send you a new version of snn.lib to try linking your code against (if
> you are willing to go through these steps), to see if it fixes your
> problem.
>
> Using the command line dmd to build should be sufficient (I think).
>
> -Steve
Thanks for the email.
It seems like it still crashes from SciTE, though. :(
When I try debugging, I see it's doing so inside _close() which is
/immediately/ above kernel32.dll!@BaseThreadInitThunk at 12() -- in other
words, it seems to be called directly from the entrypoint of the
program, assuming it hasn't undergone optimizations. The error is:
0xC0000008: An invalid handle was specified.
Is there any other place in which this can happen?
More information about the Digitalmars-d
mailing list