]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
change the event loop test to quit after a 5 second alarm
authorRay Strode <rstrode@redhat.com>
Wed, 6 Jun 2007 20:32:11 +0000 (16:32 -0400)
committerRay Strode <rstrode@redhat.com>
Wed, 6 Jun 2007 20:32:11 +0000 (16:32 -0400)
src/ply-event-loop.c

index cdd6c164960c3a2bb35c1393baaabf1dfad92878..7aff9afe057b38286935f30d25765ca9dcd89a61 100644 (file)
@@ -1059,6 +1059,13 @@ ply_event_loop_run (ply_event_loop_t *loop)
 
 static ply_event_loop_t *loop;
 
+static void
+alrm_signal_handler (void)
+{
+  write (1, "times up!\n", sizeof ("times up!\n") - 1);
+  ply_event_loop_exit (loop, 0);
+}
+
 static void
 usr1_signal_handler (void)
 {
@@ -1106,12 +1113,16 @@ main (int    argc,
   ply_event_loop_watch_signal (loop, SIGUSR1,
                             (ply_event_handler_t)
                             usr1_signal_handler, NULL);
+  ply_event_loop_watch_signal (loop, SIGALRM,
+                            (ply_event_handler_t)
+                            alrm_signal_handler, NULL);
 
   ply_event_loop_watch_fd (loop, 0, PLY_EVENT_LOOP_FD_STATUS_HAS_DATA,
                           (ply_event_handler_t) line_received_handler,
                           (ply_event_handler_t) line_received_handler,
                           NULL);
 
+  alarm (5);
   exit_code = ply_event_loop_run (loop);
 
   ply_event_loop_free (loop);