[libglnx] fdio: Use correct dfd with O_TMPFILE in rename case



commit 78ae787757ab697bf92f49ec41a03c540550c887
Author: Colin Walters <walters verbum org>
Date:   Fri Jul 8 12:57:12 2016 -0400

    fdio: Use correct dfd with O_TMPFILE in rename case
    
    While auditing this code to figure out why ostree's
    `tests/test-refs.sh` was failing, while the bug turned out to be
    different, I noticed that in the case where `dfd != target_dfd`, we
    failed to do the right `renameat()`.  (No code I'm aware of does this
    now).

 glnx-fdio.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/glnx-fdio.c b/glnx-fdio.c
index c15639d..55eef09 100644
--- a/glnx-fdio.c
+++ b/glnx-fdio.c
@@ -255,7 +255,7 @@ glnx_link_tmpfile_at (int dfd,
               g_set_error (error, G_IO_ERROR, G_IO_ERROR_EXISTS,
                "Exhausted %u attempts to create temporary file", count);
             }
-          if (renameat (dfd, tmpname_buf, target_dfd, target) < 0)
+          if (renameat (target_dfd, tmpname_buf, target_dfd, target) < 0)
             {
               glnx_set_error_from_errno (error);
               return FALSE;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]