summaryrefslogtreecommitdiff
path: root/Source/Core/Common/IOFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/Common/IOFile.cpp')
-rw-r--r--Source/Core/Common/IOFile.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/Source/Core/Common/IOFile.cpp b/Source/Core/Common/IOFile.cpp
index cf7762ea68..cc22979bbe 100644
--- a/Source/Core/Common/IOFile.cpp
+++ b/Source/Core/Common/IOFile.cpp
@@ -101,6 +101,15 @@ bool IOFile::Close()
return m_good;
}
+IOFile IOFile::Duplicate(const char openmode[]) const
+{
+#ifdef _WIN32
+ return IOFile(_fdopen(_dup(_fileno(m_file)), openmode));
+#else // _WIN32
+ return IOFile(fdopen(dup(fileno(m_file)), openmode));
+#endif // _WIN32
+}
+
void IOFile::SetHandle(std::FILE* file)
{
Close();