Mail Archives: djgpp/1994/11/01/19:38:47
> Well, yes, except that early releases of v 1.10 didn't always point to
> the rigth place; symify would often give a line too late or early, I
The call frame EIP's always point to the Eip of the instruction *after*
the call, so the line numbers were probably +1.
> Oh, yeah, didn't you say that under DPMI you don't get a GPF and
> stack dump in this situation? (I have no idea what I'm talking about,
> I don't use DPMI, I just recall a bunch of words that were sort of in
> that order---a reply to Tony Helm's original question about
> "strcat()?") If this is so, then there is a need for a debugging library.
DPMI does not currently have null pointer protection, so under DPMI you
would currently just use whatever happens to be in page 0 of the memory
block. Under V1.11 page 0 was never written, so your dpmi provider
probably had it all zeros. Due to a minor bug in the V1.12 LD, the
protection page wasn't being generated so the memory at location 0 was
being written with the COFF header (I think). I can't be sure this is true,
but because of the LD problem I don't think any (early?) V1.12 images
provide null pointer protection at all.
Anyway, it will all get fixed someday, and work under DPMI too.
- Raw text -