Xref: news-dnh.mv.net comp.os.msdos.djgpp:605 Newsgroups: comp.os.msdos.djgpp Path: news-dnh.mv.net!mv!news.sprintlink.net!howland.reston.ans.net!cam.news.pipex.net!pipex!edi.news.pipex.net!pipex!sunsite.doc.ic.ac.uk!cs.city.ac.uk!city!sl323 From: sl323 AT city DOT ac DOT uk (Mark Lewis) Subject: Re: Bug: read() in v1.12m4 (?) Sender: news AT city DOT ac DOT uk (Unix Network News) Nntp-Posting-Host: culham Reply-To: M DOT Lewis AT city DOT ac DOT uk Organization: The City University References: <1995Jun24 DOT 184323 DOT 9744 AT city DOT ac DOT uk> <3sm1ub$9tm AT news DOT rwth-aachen DOT de> Date: Mon, 26 Jun 95 14:24:24 GMT Lines: 58 To: djgpp AT sun DOT soe DOT clarkson DOT edu Dj-Gateway: from newsgroup comp.os.msdos.djgpp Hans-Bernhard Broeker (softbrek AT hathi DOT informatik DOT rwth-aachen DOT de) wrote: > sl323 AT city DOT ac DOT uk (Mark Lewis) writes: > >HELP ! I've managed to get this go32 error from a simple bit of code. > >go32 version 1.12.maint3 Copyright (C) 1994 DJ Delorie > >This image has a buggy read.s module. Run DPMIFIX on it and try again. > >Unsupported DOS request at eip=1967 > >eax=00003f08 ebx=00000008 ecx=00004000 edx=00000000 esi=00000000 edi=00000000 > >ebp=7ffffd90 esp=7ffffd68 cs=d8 ds=48 es=48 fs=48 gs=38 ss=48 cr2=00009000 > >Call frame traceback EIPs: > > 0x00001967 > > 0x0000128d > This sounds like a library problem: read.s, the source file for the read() > function of the C-library, was not DPMI-compatible in some earlier version. > This has been fixed quite some time ago, and there was a small utility called > dpmifix that could fix it in readily linked executables by binary patching. > So: check if you have a correct version 1.12m3 (or m4) installation, and > esp. a correctly patched libc.a (did you run the *.bat files included in > 112m[1-4].zip? they are there to patch the libc.a). Firstly, let me apologise for posting this 3 times. I was posting on a modem link and my newsreader died all 3 times. I didn't realise anything at all had gotten through until today. Secondly, if my code was at fault then please don't flame me. It was knocked up and fiddled with very late at night while I was trying to isolate a problem with read() that was being exhibited by another program. This program is NOT buggy as far as I can tell. It compiles and runs fine under gcc-2.6.3 (sun-sparc-solaris2.3), emx/gcc (running on DOS), borland C, and Microsoft C. The code bombs out with almost identical errors to those I got with my test code during a read() call. I got a GPF when I tried it under windows instead of DOS. I fully installed djgpp-1.12m4, including all the patches. I have had no other problems with it. Identical problems have been reported to me by 2 other people completely independantly, so I think the chances of it being a problem with my installation are minimal. The DPMI problem I read about after I had these problems, but I am running under clean DOS, and I get the same crashes during read() even with GO32=nodpmi, which makes me think that DPMI support is not an issue. Like I said before, I believe the problem lies in the read() call as defined by djgpp. If anyone would like to look at the actual code that's causing problems then I can mail it to you, either as a MIME attachment or uuencoded. Thanks in advance, Mark. -- ..--------------------------{ From: Mark Lewis }--------------------------. | Computing Services | http://www.city.ac.uk/~sl323/home.html | | City University | PGP public key available by WWW, or by | | London, England | fingering sl323 AT finger DOT city DOT ac DOT uk | `--------{ M DOT Lewis AT city DOT ac DOT uk (MIME) | nostra AT city DOT ac DOT uk (MIME) }---------'