www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/11/28/10:14:21

Date: Thu, 28 Nov 1996 17:01:27 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: Cesar Scarpini Rabak <csrabak AT dce03 DOT ipt DOT br>
Cc: Robert DOT Hoehne AT Mathematik DOT tu-chemnitz DOT de, BRA DOT EDBKMN AT memo DOT ericsson DOT se,
djgpp AT delorie DOT com
Subject: Re: Progs using abort() in a RHIDE DOS shell under Win95 cause fault/violation
In-Reply-To: <1.5.4.16.19961128102735.29bf1a1e@dmeasc.rc.ipt.br>
Message-Id: <Pine.SUN.3.91.961128165422.9191A-100000@is>
Mime-Version: 1.0

On Thu, 28 Nov 1996, Cesar Scarpini Rabak wrote:

> 3) When one shells to DOS in RHIDE and attempts to run the program,
> the program causes an abrupt termination of RHIDE, and Win95 complains "the
> application has caused a violation...".

Are you using DJGPP v2.0 or v2.01?  This was a known bug in v2.0: `abort'
called `_exit' which didn't care to restore hardware interrupts to their
previous state (it is even documented in the libc on-line reference for
`_exit').  Therefore, when your program calls `abort', the hardware
interrupts are left pointing into the blue, which will promptly crash your
system (or DOS box on Windows).  Since the DPMI host cleans up this mess
when the last client exits, you almost never see this except in a nested
DJGPP program.  The v2.01 version of `_exit' corrects that bug.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019