Remove SIGALRM handler.

Reserve TEB field for DPMI virtual interrupt flag.
This commit is contained in:
Jukka Heinonen 2003-06-16 01:18:26 +00:00 committed by Alexandre Julliard
parent e827269a99
commit ae906923a1
2 changed files with 2 additions and 23 deletions

View File

@ -988,23 +988,6 @@ static HANDLER_DEF(usr2_handler)
set_vm86_pend( &context );
restore_context( &context, HANDLER_CONTEXT );
}
/**********************************************************************
* alrm_handler
*
* Handler for SIGALRM.
* Increases the alarm counter and sets the vm86 pending flag.
*/
static HANDLER_DEF(alrm_handler)
{
CONTEXT context;
save_context( &context, HANDLER_CONTEXT );
NtCurrentTeb()->alarms++;
set_vm86_pend( &context );
restore_context( &context, HANDLER_CONTEXT );
}
#endif /* __HAVE_VM86 */
@ -1148,8 +1131,7 @@ static int set_handler( int sig, int have_sigaltstack, void (*func)() )
sig_act.ksa_handler = func;
sig_act.ksa_flags = SA_RESTART;
sig_act.ksa_mask = (1 << (SIGINT-1)) |
(1 << (SIGUSR2-1)) |
(1 << (SIGALRM-1));
(1 << (SIGUSR2-1));
/* point to the top of the stack */
sig_act.ksa_restorer = (char *)NtCurrentTeb()->signal_stack + SIGNAL_STACK_SIZE;
return wine_sigaction( sig, &sig_act, NULL );
@ -1159,7 +1141,6 @@ static int set_handler( int sig, int have_sigaltstack, void (*func)() )
sigemptyset( &sig_act.sa_mask );
sigaddset( &sig_act.sa_mask, SIGINT );
sigaddset( &sig_act.sa_mask, SIGUSR2 );
sigaddset( &sig_act.sa_mask, SIGALRM );
#if defined(linux) || defined(__NetBSD__)
sig_act.sa_flags = SA_RESTART;
@ -1226,7 +1207,6 @@ BOOL SIGNAL_Init(void)
#endif
#ifdef __HAVE_VM86
if (set_handler( SIGALRM, have_sigaltstack, (void (*)())alrm_handler ) == -1) goto error;
if (set_handler( SIGUSR2, have_sigaltstack, (void (*)())usr2_handler ) == -1) goto error;
#endif
@ -1248,7 +1228,6 @@ void SIGNAL_Block(void)
sigset_t block_set;
sigemptyset( &block_set );
sigaddset( &block_set, SIGALRM );
sigaddset( &block_set, SIGIO );
sigaddset( &block_set, SIGHUP );
sigaddset( &block_set, SIGUSR1 );

View File

@ -113,7 +113,7 @@ typedef struct _TEB
void *pthread_data; /* --3 220 Data for pthread emulation */
struct async_private *pending_list; /* --3 224 list of pending async operations */
void *driver_data; /* --3 228 Graphics driver private data */
DWORD alarms; /* --3 22c Data for vm86 mode */
DWORD dpmi_vif; /* --3 22c Protected mode virtual interrupt flag */
DWORD vm86_pending; /* --3 230 Data for vm86 mode */
void *vm86_ptr; /* --3 234 Data for vm86 mode */
/* here is plenty space for wine specific fields (don't forget to change pad6!!) */