aboutsummaryrefslogtreecommitdiff
path: root/gdbsupport/filestuff.cc
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2021-07-22 11:56:33 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2021-09-30 15:21:48 -0400
commit13084383e8955c2ff7017ac8839301688a9ee34d (patch)
treeffc4d5429e7315de53715fe7fce7bd26abd958b8 /gdbsupport/filestuff.cc
parente6e51c9c4b402cd46595790b26087ebf2fead8c1 (diff)
downloadgdb-13084383e8955c2ff7017ac8839301688a9ee34d.zip
gdb-13084383e8955c2ff7017ac8839301688a9ee34d.tar.gz
gdb-13084383e8955c2ff7017ac8839301688a9ee34d.tar.bz2
gdbsupport: make gdb_open_cloexec return scoped_fd
Make gdb_open_cloexec return a scoped_fd, to encourage using automatic management of the file descriptor closing. Except in the most trivial cases, I changed the callers to just release the fd, which retains their existing behavior. That will allow the transition to using scoped_fd more to go gradually, one caller at a time. Change-Id: Ife022b403f96e71d5ebb4f1056ef6251b30fe554
Diffstat (limited to 'gdbsupport/filestuff.cc')
-rw-r--r--gdbsupport/filestuff.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/gdbsupport/filestuff.cc b/gdbsupport/filestuff.cc
index 6ea2ad8..2975a0e 100644
--- a/gdbsupport/filestuff.cc
+++ b/gdbsupport/filestuff.cc
@@ -306,13 +306,13 @@ socket_mark_cloexec (int fd)
/* See filestuff.h. */
-int
+scoped_fd
gdb_open_cloexec (const char *filename, int flags, unsigned long mode)
{
- int fd = open (filename, flags | O_CLOEXEC, mode);
+ scoped_fd fd (open (filename, flags | O_CLOEXEC, mode));
- if (fd >= 0)
- maybe_mark_cloexec (fd);
+ if (fd.get () >= 0)
+ maybe_mark_cloexec (fd.get ());
return fd;
}