diff options
Diffstat (limited to 'base/test_utils.cpp')
-rw-r--r-- | base/test_utils.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/base/test_utils.cpp b/base/test_utils.cpp index 636477d362..1cfa9e66fe 100644 --- a/base/test_utils.cpp +++ b/base/test_utils.cpp @@ -85,10 +85,18 @@ TemporaryFile::TemporaryFile() { } TemporaryFile::~TemporaryFile() { - close(fd); + if (fd != -1) { + close(fd); + } unlink(path); } +int TemporaryFile::release() { + int result = fd; + fd = -1; + return result; +} + void TemporaryFile::init(const std::string& tmp_dir) { snprintf(path, sizeof(path), "%s%cTemporaryFile-XXXXXX", tmp_dir.c_str(), OS_PATH_SEPARATOR); |