main-func: drop unused DEFINE_MAIN_FUNCTION_WITH_POSITIVE_SIGNAL()
This commit is contained in:
@@ -115,7 +115,6 @@ bool generator_soft_rebooted(void);
|
||||
impl(argv[1], \
|
||||
argv[argc == 4 ? 2 : 1], \
|
||||
argv[argc == 4 ? 3 : 1]), \
|
||||
exit_failure_if_negative, \
|
||||
exit_failure_if_negative)
|
||||
|
||||
typedef enum GptAutoRoot {
|
||||
|
||||
@@ -1,20 +1,15 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
|
||||
#include <stdlib.h>
|
||||
#if HAVE_VALGRIND_VALGRIND_H
|
||||
# include <valgrind/valgrind.h>
|
||||
#endif
|
||||
|
||||
#include "sd-daemon.h"
|
||||
|
||||
#include "argv-util.h"
|
||||
#include "ask-password-agent.h"
|
||||
#include "hashmap.h"
|
||||
#include "main-func.h"
|
||||
#include "pager.h"
|
||||
#include "polkit-agent.h"
|
||||
#include "selinux-util.h"
|
||||
#include "signal-util.h"
|
||||
#include "string-util.h"
|
||||
|
||||
void main_prepare(int argc, char *argv[]) {
|
||||
@@ -32,25 +27,6 @@ void main_finalize(int r, int exit_status) {
|
||||
mac_selinux_finish();
|
||||
}
|
||||
|
||||
int raise_or_exit_status(int ret) {
|
||||
if (ret < 0)
|
||||
return EXIT_FAILURE;
|
||||
if (ret == 0)
|
||||
return EXIT_SUCCESS;
|
||||
if (!SIGNAL_VALID(ret))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
#if HAVE_VALGRIND_VALGRIND_H
|
||||
/* If raise() below succeeds, the destructor cleanup_pools() in hashmap.c will never called. */
|
||||
if (RUNNING_ON_VALGRIND)
|
||||
hashmap_trim_pools();
|
||||
#endif
|
||||
|
||||
(void) raise(ret);
|
||||
/* exit with failure if raise() does not immediately abort the program. */
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
int exit_failure_if_negative(int result) {
|
||||
return result < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
+7
-13
@@ -8,15 +8,16 @@ void main_prepare(int argc, char *argv[]);
|
||||
|
||||
void main_finalize(int r, int exit_status);
|
||||
|
||||
#define _DEFINE_MAIN_FUNCTION(intro, impl, result_to_exit_status, result_to_return_value) \
|
||||
#define _DEFINE_MAIN_FUNCTION(intro, impl, result_to_exit_status) \
|
||||
int main(int argc, char *argv[]) { \
|
||||
int r; \
|
||||
int r, s; \
|
||||
main_prepare(argc, argv); \
|
||||
intro; \
|
||||
r = impl; \
|
||||
main_finalize(r, result_to_exit_status(r)); \
|
||||
s = result_to_exit_status(r); \
|
||||
main_finalize(r, s); \
|
||||
static_destruct(); \
|
||||
return result_to_return_value(r); \
|
||||
return s; \
|
||||
}
|
||||
|
||||
int exit_failure_if_negative(int result) _const_;
|
||||
@@ -24,7 +25,7 @@ int exit_failure_if_negative(int result) _const_;
|
||||
/* Negative return values from impl are mapped to EXIT_FAILURE, and
|
||||
* everything else means success! */
|
||||
#define DEFINE_MAIN_FUNCTION(impl) \
|
||||
_DEFINE_MAIN_FUNCTION(,impl(argc, argv), exit_failure_if_negative, exit_failure_if_negative)
|
||||
_DEFINE_MAIN_FUNCTION(, impl(argc, argv), exit_failure_if_negative)
|
||||
|
||||
int exit_failure_if_nonzero(int result) _const_;
|
||||
|
||||
@@ -32,11 +33,4 @@ int exit_failure_if_nonzero(int result) _const_;
|
||||
* and positive values are propagated.
|
||||
* Note: "true" means failure! */
|
||||
#define DEFINE_MAIN_FUNCTION_WITH_POSITIVE_FAILURE(impl) \
|
||||
_DEFINE_MAIN_FUNCTION(,impl(argc, argv), exit_failure_if_nonzero, exit_failure_if_nonzero)
|
||||
|
||||
int raise_or_exit_status(int ret);
|
||||
|
||||
/* Negative return values from impl are mapped to EXIT_FAILURE, zero is mapped to EXIT_SUCCESS,
|
||||
* and raise if a positive signal is returned from impl. */
|
||||
#define DEFINE_MAIN_FUNCTION_WITH_POSITIVE_SIGNAL(impl) \
|
||||
_DEFINE_MAIN_FUNCTION(,impl(argc, argv), exit_failure_if_negative, raise_or_exit_status)
|
||||
_DEFINE_MAIN_FUNCTION(, impl(argc, argv), exit_failure_if_nonzero)
|
||||
|
||||
Reference in New Issue
Block a user