1
0
mirror of https://github.com/systemd/systemd.git synced 2025-02-27 01:57:35 +03:00

Merge pull request #30297 from keszybz/fixups

A few unrelated fixups for recent commits
This commit is contained in:
Luca Boccassi 2023-12-03 12:34:24 +00:00 committed by GitHub
commit 1707d5daf8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 35 additions and 33 deletions

View File

@ -43,7 +43,7 @@ static bool arg_remain_after_exit = false;
static bool arg_no_block = false;
static bool arg_wait = false;
static const char *arg_unit = NULL;
static const char *arg_description = NULL;
static char *arg_description = NULL;
static const char *arg_slice = NULL;
static bool arg_slice_inherit = false;
static int arg_expand_environment = -1;
@ -74,6 +74,7 @@ static char *arg_working_directory = NULL;
static bool arg_shell = false;
static char **arg_cmdline = NULL;
STATIC_DESTRUCTOR_REGISTER(arg_description, freep);
STATIC_DESTRUCTOR_REGISTER(arg_environment, strv_freep);
STATIC_DESTRUCTOR_REGISTER(arg_property, strv_freep);
STATIC_DESTRUCTOR_REGISTER(arg_path_property, strv_freep);
@ -281,7 +282,9 @@ static int parse_argv(int argc, char *argv[]) {
break;
case ARG_DESCRIPTION:
arg_description = optarg;
r = free_and_strdup(&arg_description, optarg);
if (r < 0)
return r;
break;
case ARG_SLICE:
@ -1376,7 +1379,10 @@ static int start_transient_service(sd_bus *bus) {
if (r < 0)
return bus_log_parse_error(r);
r = bus_wait_for_jobs_one(w, object, arg_quiet, arg_runtime_scope == RUNTIME_SCOPE_USER ? STRV_MAKE_CONST("--user") : NULL);
r = bus_wait_for_jobs_one(w,
object,
arg_quiet,
arg_runtime_scope == RUNTIME_SCOPE_USER ? STRV_MAKE_CONST("--user") : NULL);
if (r < 0)
return r;
}
@ -1908,7 +1914,6 @@ static bool shall_make_executable_absolute(void) {
static int run(int argc, char* argv[]) {
_cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL;
_cleanup_free_ char *description = NULL;
int r;
log_show_color(true);
@ -1933,19 +1938,16 @@ static int run(int argc, char* argv[]) {
}
if (!arg_description) {
char *t;
if (strv_isempty(arg_cmdline))
arg_description = arg_unit;
else {
_cleanup_free_ char *joined = strv_join(arg_cmdline, " ");
if (!joined)
return log_oom();
t = strdup(arg_unit);
else
t = quote_command_line(arg_cmdline, SHELL_ESCAPE_EMPTY);
if (!t)
return log_oom();
description = shell_escape(joined, "\"");
if (!description)
return log_oom();
arg_description = description;
}
free_and_replace(arg_description, t);
}
/* For backward compatibility reasons env var expansion is disabled by default for scopes, and
@ -1960,9 +1962,11 @@ static int run(int argc, char* argv[]) {
" Use --expand-environment=yes/no to explicitly control it as needed.");
}
/* If --wait is used connect via the bus, unconditionally, as ref/unref is not supported via the limited direct
* connection */
if (arg_wait || arg_stdio != ARG_STDIO_NONE || (arg_runtime_scope == RUNTIME_SCOPE_USER && arg_transport != BUS_TRANSPORT_LOCAL))
/* If --wait is used connect via the bus, unconditionally, as ref/unref is not supported via the
* limited direct connection */
if (arg_wait ||
arg_stdio != ARG_STDIO_NONE ||
(arg_runtime_scope == RUNTIME_SCOPE_USER && arg_transport != BUS_TRANSPORT_LOCAL))
r = bus_connect_transport(arg_transport, arg_host, arg_runtime_scope, &bus);
else
r = bus_connect_transport_systemd(arg_transport, arg_host, arg_runtime_scope, &bus);

View File

@ -183,12 +183,12 @@ static int run(int argc, char *argv[]) {
r = sd_bus_process(a, &m);
if (ERRNO_IS_NEG_DISCONNECT(r)) /* Treat 'connection reset by peer' as clean exit condition */
break;
return 0;
if (r < 0)
return log_error_errno(r, "Failed to process bus a: %m");
if (m) {
if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected"))
break;
return 0;
r = sd_bus_send(b, m, NULL);
if (r < 0)
@ -200,12 +200,12 @@ static int run(int argc, char *argv[]) {
r = sd_bus_process(b, &m);
if (ERRNO_IS_NEG_DISCONNECT(r)) /* Treat 'connection reset by peer' as clean exit condition */
break;
return 0;
if (r < 0)
return log_error_errno(r, "Failed to process bus: %m");
if (m) {
if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected"))
break;
return 0;
r = sd_bus_send(a, m, NULL);
if (r < 0)
@ -247,8 +247,6 @@ static int run(int argc, char *argv[]) {
if (r < 0 && !ERRNO_IS_TRANSIENT(r)) /* don't be bothered by signals, i.e. EINTR */
return log_error_errno(r, "ppoll() failed: %m");
}
return 0;
}
DEFINE_MAIN_FUNCTION(run);

View File

@ -15,7 +15,7 @@ TEST(saturate_add) {
assert_se(saturate_add(60, 60, 50) == 50);
}
TEST(align_power2) {
TEST(ALIGN_POWER2) {
unsigned long i, p2;
assert_se(ALIGN_POWER2(0) == 0);
@ -57,7 +57,7 @@ TEST(align_power2) {
}
}
TEST(max) {
TEST(MAX) {
static const struct {
int a;
int b[CONST_MAX(10, 100)];
@ -159,7 +159,7 @@ TEST(container_of) {
#pragma GCC diagnostic pop
TEST(div_round_up) {
TEST(DIV_ROUND_UP) {
int div;
/* basic tests */
@ -192,7 +192,7 @@ TEST(div_round_up) {
assert_se(0xfffffffdU / 10U + !!(0xfffffffdU % 10U) == 429496730U);
}
TEST(ptr_to_int) {
TEST(PTR_TO_INT) {
/* Primary reason to have this test is to validate that pointers are large enough to hold entire int range */
assert_se(PTR_TO_INT(INT_TO_PTR(0)) == 0);
assert_se(PTR_TO_INT(INT_TO_PTR(1)) == 1);
@ -201,7 +201,7 @@ TEST(ptr_to_int) {
assert_se(PTR_TO_INT(INT_TO_PTR(INT_MIN)) == INT_MIN);
}
TEST(in_set) {
TEST(IN_SET) {
assert_se(IN_SET(1, 1, 2));
assert_se(IN_SET(1, 1, 2, 3, 4));
assert_se(IN_SET(2, 1, 2, 3, 4));
@ -221,7 +221,7 @@ TEST(in_set) {
assert_se(!IN_SET(t.x, 2, 3, 4));
}
TEST(foreach_pointer) {
TEST(FOREACH_POINTER) {
int a, b, c, *i;
size_t k = 0;
@ -300,7 +300,7 @@ TEST(foreach_pointer) {
assert_se(k == 11);
}
TEST(foreach_va_args) {
TEST(FOREACH_VA_ARGS) {
size_t i;
i = 0;
@ -484,7 +484,7 @@ TEST(foreach_va_args) {
assert_se(false);
}
TEST(align_to) {
TEST(ALIGN_TO) {
assert_se(ALIGN_TO(0, 1) == 0);
assert_se(ALIGN_TO(1, 1) == 1);
assert_se(ALIGN_TO(2, 1) == 2);
@ -1005,7 +1005,7 @@ TEST(FOREACH_ARRAY) {
assert_se(ROUND_UP(x, y) == max_value); \
})
TEST(round_up) {
TEST(ROUND_UP) {
TEST_ROUND_UP_BY_TYPE(uint8_t, UINT8_MAX);
TEST_ROUND_UP_BY_TYPE(uint16_t, UINT16_MAX);
TEST_ROUND_UP_BY_TYPE(uint32_t, UINT32_MAX);