VirtualBox

Opened 12 years ago

Last modified 12 years ago

#10119 closed defect

Semaphore, SIGALRM not fired — at Initial Version

Reported by: Adam Owned by:
Component: other Version: VirtualBox 4.1.8
Keywords: signal, alarm, semaphore Cc:
Guest type: Linux Host type: Windows

Description

There's a bug in handling SIGALRM while waiting for a samaphore - signal is never delivered.

#include <stdio.h>
#include <stdlib.h>
#include <semaphore.h>
#include <signal.h>

static void handler(int sig) { exit(0); }

main() {
   sem_t s;
   struct sigaction sa;

   sem_init(&s, 0, 0);
   sa.sa_handler = handler;
   sigemptyset(&sa.sa_mask);
   sa.sa_flags = 0;
   if (sigaction(SIGALRM, &sa, NULL) == -1) exit(-1);
   alarm(2);
   sem_wait(&s);
}

Change History (0)

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use