From: Felix Fietkau Date: Mon, 6 Nov 2017 10:11:49 +0000 (+0100) Subject: logd: only create pipe in stream mode X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=69d6542848ed712a79dcba4965da4100e2804dd7;p=oweals%2Fubox.git logd: only create pipe in stream mode Signed-off-by: Felix Fietkau --- diff --git a/log/logd.c b/log/logd.c index 9b481cd..58abfad 100644 --- a/log/logd.c +++ b/log/logd.c @@ -103,13 +103,13 @@ read_log(struct ubus_context *ctx, struct ubus_object *obj, stream = blobmsg_get_bool(tb[READ_STREAM]); } - if (pipe(fds) == -1) { - fprintf(stderr, "logd: failed to create pipe: %s\n", strerror(errno)); - return -1; - } - l = log_list(count, NULL); if (stream) { + if (pipe(fds) == -1) { + fprintf(stderr, "logd: failed to create pipe: %s\n", strerror(errno)); + return -1; + } + ubus_request_set_fd(ctx, req, fds[0]); cl = calloc(1, sizeof(*cl)); cl->s.stream.notify_state = client_notify_state;