From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stas Sergeev Subject: Re: MSM DPMI error Date: Thu, 19 Sep 2002 16:51:52 +0400 Sender: linux-msdos-owner@vger.kernel.org Message-ID: <3D89C868.2050703@yahoo.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070501030405080802020402" Return-path: List-Id: To: linux-msdos@vger.kernel.org This is a multi-part message in MIME format. --------------070501030405080802020402 Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 7bit Hello. Grigory Batalov wrote: > I have full logs (-D9+M) if someone is interesting: OK, AFAICS it have nothing to do with 1.1.3.4 - this bug was always there and I wonder why nobody noticed it before (oh, about a year ago Bart forwarded me something similar from djgpp-devel, IIRC). Try this patch. Without the ability to test, I can't guarantee, but I think it must be a fix. --------------070501030405080802020402 Content-Type: text/plain; name="int_loop.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="int_loop.diff" --- src/dosext/dpmi/dpmi.c Thu Sep 19 06:38:56 2002 +++ src/dosext/dpmi/dpmi.c Thu Sep 19 16:45:35 2002 @@ -2202,7 +2202,11 @@ case 0x1c: /* ROM BIOS timer tick interrupt */ case 0x23: /* DOS Ctrl+C interrupt */ case 0x24: /* DOS critical error interrupt */ - run_pm_int(VM86_ARG(retval)); + if (SEGOFF2LINEAR(BIOSSEG, INT_OFF(VM86_ARG(retval))) != + SEGOFF2LINEAR(_CS, _IP) -2) + run_pm_int(VM86_ARG(retval)); + else + do_int(VM86_ARG(retval)); break; default: #ifdef USE_MHPDBG --------------070501030405080802020402--