34 lines
999 B
Diff
34 lines
999 B
Diff
From 2401e1a090dcaac7614a8984cd3e3832a2a476ab Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
|
|
Date: Fri, 16 Sep 2022 15:11:47 +0200
|
|
Subject: [PATCH] glocalfileoutputstream: Do not double-close an fd on unlink
|
|
error
|
|
|
|
In case we fail unlinking a file we could close again an FD that has
|
|
been already just closed. So avoid this by unsetting it when closing.
|
|
|
|
Coverity CID: #1474462
|
|
|
|
Conflict:NA
|
|
Reference:https://gitlab.gnome.org/GNOME/glib/-/commit/2401e1a090dcaac7614a8984cd3e3832a2a476ab
|
|
|
|
---
|
|
gio/glocalfileoutputstream.c | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/gio/glocalfileoutputstream.c b/gio/glocalfileoutputstream.c
|
|
index 78d3e85..a61d5b5 100644
|
|
--- a/gio/glocalfileoutputstream.c
|
|
+++ b/gio/glocalfileoutputstream.c
|
|
@@ -1163,6 +1163,7 @@ handle_overwrite_open (const char *filename,
|
|
if (replace_destination_set)
|
|
{
|
|
g_close (fd, NULL);
|
|
+ fd = -1;
|
|
|
|
if (g_unlink (filename) != 0)
|
|
{
|
|
--
|
|
2.33.0
|
|
|