[PATCH ld/maint-diff-quiet-w] Windows: redirect fopen("/dev/null") to fopen("nul")
- From
Johannes Sixt <j.sixt@viscovery.net>
- Date
- Feb 25, 2010, 08:49 UTC
- Message-ID
- <4B86399E.3090508@viscovery.net>
From: Johannes Sixt <j6t@kdbg.org>
An instance of fopen("/dev/null",...) was added to the code base. On Windows, we have to use "nul" instead. This implements a compatibility wrapper of fopen() that checks for this particular condition.
Signed-off-by: Johannes Sixt <j6t@kdbg.org> --- compat/mingw.c | 8 ++++++++ compat/mingw.h | 3 +++ 2 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/compat/mingw.c b/compat/mingw.c index 5edf152..57aec93 100644 --- a/compat/mingw.c +++ b/compat/mingw.c @@ -140,6 +140,14 @@ int mingw_open (const char *filename, int oflags, ...) return fd; } +#undef fopen +FILE *mingw_fopen (const char *filename, const char *otype) +{ + if (!strcmp(filename, "/dev/null")) + filename = "nul"; + return fopen(filename, otype); +} + /* * The unit of FILETIME is 100-nanoseconds since January 1, 1601, UTC. * Returns the 100-nanoseconds ("hekto nanoseconds") since the epoch. diff --git a/compat/mingw.h b/compat/mingw.h index f53bcca..e187b04 100644 --- a/compat/mingw.h +++ b/compat/mingw.h @@ -170,6 +170,9 @@ int link(const char *oldpath, const char *newpath); int mingw_open (const char *filename, int oflags, ...); #define open mingw_open +FILE *mingw_fopen (const char *filename, const char *otype); +#define fopen mingw_fopen + char *mingw_getcwd(char *pointer, int len); #define getcwd mingw_getcwd
-- 1.7.0.1285.g1a907.dirty