Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <3C3B2D03.F0C73746@oculustech.com> Date: Tue, 08 Jan 2002 12:31:47 -0500 From: Timothy Wall Reply-To: twall AT oculustech DOT com Organization: Oculus Technologies X-Mailer: Mozilla 4.74 (Macintosh; U; PPC) X-Accept-Language: en MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Control-C, SIGINT, ConsoleCtrlHandler... Content-Type: text/plain; charset=us-ascii; x-mac-type="54455854"; x-mac-creator="4D4F5353" Content-Transfer-Encoding: 7bit I'm trying to get some consistent behavior under the command shell and cygwin, tho' without much luck so far. I'd like to know if there's a canonical SIGINT/SIGTERM handling convention for console processes (taking cygwin into account, or barring that for invocations in cmd.exe only). The important thing for my program is that it perform certain cleanup operations on exit (normally taken care of with a signal handler attached to SIGINT/SIGTERM). Under the cmd.exe, the handler usually gets called when it's installed with signal() or with SetConsoleCtrlHandler (there have been cases where it does not, but I can't reliably reproduce them...). Under bash, however, it looks like the consolectrlhandler never even gets a chance to finish before the process is wiped. Installing with signal() also seems that the process is wiped before the cleanup gets a chance to run. (the handler sets a flag which the main thread uses to determine that it's time to exit). -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/