Mail Archives: djgpp/2001/07/15/09:40:55
X-Sent: | 15 Jul 2001 13:40:01 GMT
|
Message-ID: | <001d01c10d33$d7e6b9c0$e33e1d18@nycap.rr.com>
|
From: | "Matthew Conte" <matt AT conte DOT com>
|
To: | <djgpp AT delorie DOT com>
|
Subject: | '9x and raise in interrupt service routines
|
Date: | Sun, 15 Jul 2001 09:41:24 -0400
|
MIME-Version: | 1.0
|
X-Priority: | 3
|
X-MSMail-Priority: | Normal
|
X-Mailer: | Microsoft Outlook Express 6.00.2479.0006
|
X-MimeOLE: | Produced By Microsoft MimeOLE V6.00.2479.0006
|
Reply-To: | djgpp AT delorie DOT com
|
hello.
i have a custom keyboard handler installed via
_go32_dpmi_set_protected_mode_interrupt_vector, so the standard SIGINT
does not get handled for CTRL-C/CTRL-BREAK. i'd like to be able to
handle the keystrokes in my own handler by calling raise(SIGINT), but
this causes the dreaded windows "This program has caused an illegal
operation..." dialog box to pop up and close my traceback dosbox.
i'm trying to handle SIGINT correctly to use gdb to track down an
infinite loop somewhere in my code. without handling SIGINT, my
custom keyboard handler prevents SIGINT from ever occurring, so i can
never break out of the infinite loop. and if i do raise(SIGINT) in my
handler, i get the aforementioned crash.
my crt0_startup_flags = _CRT0_FLAG_NONMOVE_SBRK |
_CRT0_FLAG_LOCK_MEMORY;
any help as to how i can remedy this situation would be greatly
appreciated.
regards,
matthew.
- Raw text -