diff options
author | Lennart Poettering <lennart@poettering.net> | 2018-02-15 17:47:37 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-15 17:47:37 +0100 |
commit | a94ab7acfd852c77775498796af180d6f36f3ba3 (patch) | |
tree | 57af490a41a1ad2be6bc6ad8582fa7663b826046 /src/core/socket.c | |
parent | 476f65f98a60b070bfec85842f220f0d37819f7f (diff) | |
parent | 554ce41f619f0a03b5fc777af4b923ff68fe13d4 (diff) | |
download | systemd-a94ab7acfd852c77775498796af180d6f36f3ba3.tar.gz |
Merge pull request #8175 from keszybz/gc-cleanup
Garbage collection cleanup
Diffstat (limited to 'src/core/socket.c')
-rw-r--r-- | src/core/socket.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/core/socket.c b/src/core/socket.c index 38ad8820be..1a57cf0e11 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -250,7 +250,7 @@ int socket_instantiate_service(Socket *s) { if (r < 0) return r; - unit_ref_set(&s->service, u); + unit_ref_set(&s->service, UNIT(s), u); return unit_add_two_dependencies(UNIT(s), UNIT_BEFORE, UNIT_TRIGGERS, u, false, UNIT_DEPENDENCY_IMPLICIT); } @@ -377,7 +377,7 @@ static int socket_add_extras(Socket *s) { if (r < 0) return r; - unit_ref_set(&s->service, x); + unit_ref_set(&s->service, u, x); } r = unit_add_two_dependencies(u, UNIT_BEFORE, UNIT_TRIGGERS, UNIT_DEREF(s->service), true, UNIT_DEPENDENCY_IMPLICIT); @@ -2818,12 +2818,12 @@ SocketType socket_port_type_from_string(const char *s) { return _SOCKET_TYPE_INVALID; } -_pure_ static bool socket_check_gc(Unit *u) { +_pure_ static bool socket_may_gc(Unit *u) { Socket *s = SOCKET(u); assert(u); - return s->n_connections > 0; + return s->n_connections == 0; } static int socket_accept_do(Socket *s, int fd) { @@ -3323,7 +3323,7 @@ const UnitVTable socket_vtable = { .active_state = socket_active_state, .sub_state_to_string = socket_sub_state_to_string, - .check_gc = socket_check_gc, + .may_gc = socket_may_gc, .sigchld_event = socket_sigchld_event, |