Просмотр исходного кода

Fix compiler warning introduced by previous patch

QB loop signal handler prototype differs from signal(2) prototype.
Solution is to create wrapper functions.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Jan Friesse 11 лет назад
Родитель
Сommit
dfaca4b10a
1 измененных файлов с 24 добавлено и 2 удалено
  1. 24 2
      exec/main.c

+ 24 - 2
exec/main.c

@@ -252,6 +252,17 @@ static void sigsegv_handler (int num)
 	raise (SIGSEGV);
 }
 
+/*
+ * QB wrapper for real signal handler
+ */
+static int32_t sig_segv_handler (int num, void *data)
+{
+
+	sigsegv_handler(num);
+
+	return 0;
+}
+
 static void sigabrt_handler (int num)
 {
 	(void)signal (SIGABRT, SIG_DFL);
@@ -260,6 +271,17 @@ static void sigabrt_handler (int num)
 	raise (SIGABRT);
 }
 
+/*
+ * QB wrapper for real signal handler
+ */
+static int32_t sig_abrt_handler (int num, void *data)
+{
+
+	sigabrt_handler(num);
+
+	return 0;
+}
+
 #define LOCALHOST_IP inet_addr("127.0.0.1")
 
 static void *corosync_group_handle;
@@ -1351,9 +1373,9 @@ int main (int argc, char **argv, char **envp)
 	qb_loop_signal_add(corosync_poll_handle, QB_LOOP_HIGH,
 		SIGINT, NULL, sig_exit_handler, NULL);
 	qb_loop_signal_add(corosync_poll_handle, QB_LOOP_HIGH,
-		SIGSEGV, NULL, sigsegv_handler, NULL);
+		SIGSEGV, NULL, sig_segv_handler, NULL);
 	qb_loop_signal_add(corosync_poll_handle, QB_LOOP_HIGH,
-		SIGABRT, NULL, sigabrt_handler, NULL);
+		SIGABRT, NULL, sig_abrt_handler, NULL);
 	qb_loop_signal_add(corosync_poll_handle, QB_LOOP_HIGH,
 		SIGQUIT, NULL, sig_exit_handler, NULL);
 	qb_loop_signal_add(corosync_poll_handle, QB_LOOP_HIGH,