From 1f502cb434a794a09b2ea3d0bee7aca510245577 Mon Sep 17 00:00:00 2001
From: Ryan Gonzalez <ryan.gonzalez@collabora.com>
Date: Mon, 5 Aug 2024 18:14:26 -0500
Subject: [PATCH] logger: Fix always re-opening files when --log-fd is used

`self->file_stat` was only initialized if an fd was *not* given, which
would lead it to always re-create the log file once.

steamrt/tasks#487

Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com>
---
 steam-runtime-tools/logger.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/steam-runtime-tools/logger.c b/steam-runtime-tools/logger.c
index d5b6a6bb8..6cf066a09 100644
--- a/steam-runtime-tools/logger.c
+++ b/steam-runtime-tools/logger.c
@@ -450,6 +450,10 @@ _srt_logger_setup (SrtLogger *self,
       if (self->filename == NULL)
         return glnx_throw (error,
                            "Providing a log fd requires a filename");
+      if (fstat (self->file_fd, &self->file_stat) < 0)
+        return glnx_throw_errno_prefix (error,
+                                        "Unable to stat \"%s\"",
+                                        self->filename);
     }
   else if (self->use_file)
     {
-- 
GitLab