[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Does signal trap of CTRL-CLOSE event allowable to be used on windows?
From: |
Tatsuro MATSUOKA |
Subject: |
Does signal trap of CTRL-CLOSE event allowable to be used on windows? |
Date: |
Wed, 13 Jul 2011 03:36:26 +0900 (JST) |
Hello
Pressing 'X' button on the right upper side windows console always induce error.
If we use SetConsoleCtrlHandler function and trap CTRL-CLOSE event, we may
eliminate annoy the error.
In src/sighandlers.cc, I found
#**From here
#ifdef USE_W32_SIGINT
static BOOL CALLBACK
w32_sigint_handler (DWORD sig)
{
const char *sig_name;
switch(sig)
{
case CTRL_BREAK_EVENT:
sig_name = "Ctrl-Break";
break;
case CTRL_C_EVENT:
sig_name = "Ctrl-C";
break;
case CTRL_CLOSE_EVENT:
sig_name = "close console";
break;
case CTRL_LOGOFF_EVENT:
sig_name = "logoff";
break;
case CTRL_SHUTDOWN_EVENT:
sig_name = "shutdown";
break;
default:
sig_name = "unknown console event";
break;
}
switch(sig)
{
case CTRL_BREAK_EVENT:
case CTRL_C_EVENT:
w32_raise (SIGINT);
break;
case CTRL_CLOSE_EVENT:
case CTRL_LOGOFF_EVENT:
case CTRL_SHUTDOWN_EVENT:
default:
// We should do the following:
// clean_up_and_exit (0);
// We can't because we aren't running in the normal Octave thread.
user_abort(sig_name, sig);
break;
}
// Return TRUE if the event was handled, or FALSE if another handler
// should be called.
// FIXME check that windows terminates the thread.
return TRUE;
}
# ***********here END
If we manipulate arround
case CTRL_CLOSE_EVENT:
we may avoid the annoying the error.
Regards
Tatsuro
- Does signal trap of CTRL-CLOSE event allowable to be used on windows?,
Tatsuro MATSUOKA <=