From 3913d73e2025555d84f72a7c2d9b31b300535900 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Fri, 26 Jul 2013 15:27:30 -0700 Subject: [PATCH] Use fwrite in the msvc tool instead of printf This allows wide characters from the compiler to propagate through the msvc tool. Similar to ad76e867f782e75e0fed620e7b39f7099af154a9. --- src/msvc_helper_main-win32.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/msvc_helper_main-win32.cc b/src/msvc_helper_main-win32.cc index 8a0479c..ff9bc8e 100644 --- a/src/msvc_helper_main-win32.cc +++ b/src/msvc_helper_main-win32.cc @@ -129,7 +129,9 @@ int MSVCHelperMain(int argc, char** argv) { // CLWrapper's output already as \r\n line endings, make sure the C runtime // doesn't expand this to \r\r\n. _setmode(_fileno(stdout), _O_BINARY); - printf("%s", output.c_str()); + // Avoid printf and C strings, since the actual output might contain null + // bytes like UTF-16 does (yuck). + fwrite(&output[0], sizeof(char), output.size(), stdout); return exit_code; } -- 2.7.4