summaryrefslogtreecommitdiff
path: root/src/journal-remote
diff options
context:
space:
mode:
authorLuca Boccassi <bluca@debian.org>2022-12-18 10:58:37 +0000
committerLuca Boccassi <bluca@debian.org>2022-12-18 10:58:47 +0000
commit4bf277caa54ed2b1cab474b5e38c3675eb5ada3a (patch)
tree609f39e93a2d69f1b3f24094560ef090232ec559 /src/journal-remote
parenta4f82d2cd7be87f4f23b86dd683ce89b34841cd9 (diff)
downloadsystemd-4bf277caa54ed2b1cab474b5e38c3675eb5ada3a.tar.gz
journal-remote: fix memory leak on initialization error
Follow-up for f12b399dd6362a03379cb769954ebfb9972236ed from https://github.com/systemd/systemd/pull/25076 CID#1501550
Diffstat (limited to 'src/journal-remote')
-rw-r--r--src/journal-remote/journal-remote-write.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/journal-remote/journal-remote-write.c b/src/journal-remote/journal-remote-write.c
index 2e58c6d91e..f6c3d83732 100644
--- a/src/journal-remote/journal-remote-write.c
+++ b/src/journal-remote/journal-remote-write.c
@@ -22,7 +22,7 @@ static int do_rotate(ManagedJournalFile **f, MMapCache *m, JournalFileFlags file
}
Writer* writer_new(RemoteServer *server) {
- Writer *w;
+ _cleanup_(writer_unrefp) Writer *w = NULL;
int r;
w = new0(Writer, 1);
@@ -33,7 +33,7 @@ Writer* writer_new(RemoteServer *server) {
w->mmap = mmap_cache_new();
if (!w->mmap)
- return mfree(w);
+ return NULL;
w->n_ref = 1;
w->server = server;
@@ -50,7 +50,7 @@ Writer* writer_new(RemoteServer *server) {
}
}
- return w;
+ return TAKE_PTR(w);
}
static Writer* writer_free(Writer *w) {