Fix: bad file descriptors on close after rotation error
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 18 May 2016 18:04:10 +0000 (14:04 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 20 May 2016 20:40:02 +0000 (16:40 -0400)
Ensure we don't try to close output stream file descriptors twice when a
trace file rotation error occurs (once at tracefile rotation, once when
closing the stream). Set the fd value to -1 after the first close to
ensure we don't try to close it again.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
src/common/utils.c

index 3892cb4ada8b613b2396866e033bf16311abf7a4..46da97e56019aa881d9092e7abb326f4be592bcb 100644 (file)
@@ -793,6 +793,7 @@ int utils_rotate_stream_file(char *path_name, char *file_name, uint64_t size,
                PERROR("Closing tracefile");
                goto error;
        }
+       *stream_fd = -1;
 
        if (count > 0) {
                /*
This page took 0.026137 seconds and 4 git commands to generate.