From 5aff37d28d6a140f70f6cae996e6f55b21b1106d Mon Sep 17 00:00:00 2001
From: "Ronald S. Bultje" <rsbultje@gmail.com>
Date: Sun, 24 Jun 2012 21:29:14 +0300
Subject: [PATCH] os_support: Include all the necessary headers for the win32
 open function
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

io.h is required for open and _wopen, and fcntl.h is required for
the O_CREAT flag. On mingw, fcntl.h is included by os_support.h (and
the mingw fcntl.h includes io.h), but include it explicitly here
since this implementation requires it.

Also move the #undef open up. open must not be defined to ff_win32_open
while including the headers that declare the open function. On mingw,
this happened in os_support.h before open was redirected.

Signed-off-by: Martin Storsjö <martin@martin.st>
---
 libavformat/os_support.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavformat/os_support.c b/libavformat/os_support.c
index 0cbaf453db8..8054ba6bbbf 100644
--- a/libavformat/os_support.c
+++ b/libavformat/os_support.c
@@ -28,9 +28,11 @@
 #include "os_support.h"
 
 #if defined(_WIN32) && !defined(__MINGW32CE__)
+#undef open
+#include <fcntl.h>
+#include <io.h>
 #include <windows.h>
 
-#undef open
 int ff_win32_open(const char *filename_utf8, int oflag, int pmode)
 {
     int fd;
-- 
GitLab