From 26b641cde2e1bb2ed95683afa94b31ba0207339d Mon Sep 17 00:00:00 2001 From: Ron Yorston Date: Mon, 7 Dec 2020 08:40:25 +0000 Subject: winansi: intercept calls to fputc(3) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Perform code page translation for fputc(3). It's only used in a few places but is needed to fix things like: $ echo € | dos2unix Ç $ paste -d € file1 file2 1Ç2 Unfortunately it breaks the inventive use of dos2unix in GitHub issue #203. --- include/mingw.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/mingw.h b/include/mingw.h index d70bc26e6..8af2e3938 100644 --- a/include/mingw.h +++ b/include/mingw.h @@ -152,6 +152,7 @@ int winansi_putchar(int c); int winansi_puts(const char *s); size_t winansi_fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream); int winansi_fputs(const char *str, FILE *stream); +int winansi_fputc(int c, FILE *stream); int winansi_vsnprintf(char *buf, size_t size, const char *format, va_list list); int winansi_vfprintf(FILE *stream, const char *format, va_list list); int winansi_printf(const char *format, ...) __attribute__((format (printf, 1, 2))); @@ -163,6 +164,7 @@ int winansi_getc(FILE *stream); #define puts winansi_puts #define fwrite winansi_fwrite #define fputs winansi_fputs +#define fputc winansi_fputc #if !defined(__USE_MINGW_ANSI_STDIO) || !__USE_MINGW_ANSI_STDIO #define vsnprintf(buf, size, ...) winansi_vsnprintf(buf, size, __VA_ARGS__) #endif -- cgit v1.2.3-55-g6feb