Cross-platform wrappers for fopen, _wfopen_s, etc.
Patch by PaweÅ‚ Hajdan jr <[email protected]>.

http://codereview.chromium.org/6005


git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2760 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/base/file_util_posix.cc b/base/file_util_posix.cc
index 65dbfcbb..edb20c7 100644
--- a/base/file_util_posix.cc
+++ b/base/file_util_posix.cc
@@ -9,6 +9,7 @@
 #include <fnmatch.h>
 #include <fts.h>
 #include <libgen.h>
+#include <stdio.h>
 #include <string.h>
 #include <sys/errno.h>
 #include <sys/stat.h>
@@ -309,6 +310,14 @@
   return true;
 }
 
+FILE* OpenFile(const std::string& filename, const char* mode) {
+  return fopen(filename.c_str(), mode);
+}
+
+FILE* OpenFile(const std::wstring& filename, const char* mode) {
+  return fopen(WideToUTF8(filename).c_str(), mode);
+}
+
 int ReadFile(const std::wstring& filename, char* data, int size) {
   int fd = open(WideToUTF8(filename).c_str(), O_RDONLY);
   if (fd < 0)