From 2ad4a084ddf1c5450a7d7768cda9b2ccf635e3ef Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 10 Sep 2016 18:56:18 +0200 Subject: [PATCH] Added patch to silence a noisy FIXME message in msvcrt.pf_printf. --- ...y-noisy-FIXME-only-once-in-pf_printf.patch | 29 +++++++++++++++++++ patches/patchinstall.sh | 16 ++++++++++ 2 files changed, 45 insertions(+) create mode 100644 patches/msvcrt-Silence_FIXMEs/0001-msvcrt-Display-noisy-FIXME-only-once-in-pf_printf.patch diff --git a/patches/msvcrt-Silence_FIXMEs/0001-msvcrt-Display-noisy-FIXME-only-once-in-pf_printf.patch b/patches/msvcrt-Silence_FIXMEs/0001-msvcrt-Display-noisy-FIXME-only-once-in-pf_printf.patch new file mode 100644 index 00000000..13308f9b --- /dev/null +++ b/patches/msvcrt-Silence_FIXMEs/0001-msvcrt-Display-noisy-FIXME-only-once-in-pf_printf.patch @@ -0,0 +1,29 @@ +From 68a94ad2c728c00cc9f81b961b4d47dbe3ccb2f3 Mon Sep 17 00:00:00 2001 +From: Christian Costa +Date: Tue, 6 Sep 2016 00:10:09 +0200 +Subject: msvcrt: Display noisy FIXME only once in pf_printf. + +--- + dlls/msvcrt/printf.h | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/dlls/msvcrt/printf.h b/dlls/msvcrt/printf.h +index 6c9eeeb..4e59f31 100644 +--- a/dlls/msvcrt/printf.h ++++ b/dlls/msvcrt/printf.h +@@ -495,8 +495,10 @@ int FUNC_NAME(pf_printf)(FUNC_NAME(puts_clbk) pf_puts, void *puts_ctx, const API + } else if(flags.Format == 'c' || flags.Format == 'C') { + int ch = pf_args(args_ctx, pos, VT_INT, valist).get_int; + +- if((ch&0xff) != ch) +- FIXME("multibyte characters printing not supported\n"); ++ if((ch&0xff) != ch) { ++ static int once; ++ if (!once++) FIXME("multibyte characters printing not supported\n"); ++ } + + i = FUNC_NAME(pf_handle_string)(pf_puts, puts_ctx, &ch, 1, &flags, locinfo, legacy_wide); + } else if(flags.Format == 'p') { +-- +2.9.0 + diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index c36672f3..2f783c27 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -198,6 +198,7 @@ patch_enable_all () enable_msidb_Implementation="$1" enable_msvcr120__SetWinRTOutOfMemoryExceptionCallback="$1" enable_msvcrt_Math_Precision="$1" + enable_msvcrt_Silence_FIXMEs="$1" enable_msvfw32_ICGetDisplayFormat="$1" enable_msvideo_dll16_DrawDibProfileDisplay="$1" enable_ntdll_APC_Performance="$1" @@ -774,6 +775,9 @@ patch_enable () msvcrt-Math_Precision) enable_msvcrt_Math_Precision="$2" ;; + msvcrt-Silence_FIXMEs) + enable_msvcrt_Silence_FIXMEs="$2" + ;; msvfw32-ICGetDisplayFormat) enable_msvfw32_ICGetDisplayFormat="$2" ;; @@ -4708,6 +4712,18 @@ if test "$enable_msvcrt_Math_Precision" -eq 1; then ) >> "$patchlist" fi +# Patchset msvcrt-Silence_FIXMEs +# | +# | Modified files: +# | * dlls/msvcrt/printf.h +# | +if test "$enable_msvcrt_Silence_FIXMEs" -eq 1; then + patch_apply msvcrt-Silence_FIXMEs/0001-msvcrt-Display-noisy-FIXME-only-once-in-pf_printf.patch + ( + echo '+ { "Christian Costa", "msvcrt: Display noisy FIXME only once in pf_printf.", 1 },'; + ) >> "$patchlist" +fi + # Patchset msvfw32-ICGetDisplayFormat # | # | This patchset fixes the following Wine bugs: