Index: test/Index/remap-complete.c
===================================================================
--- test/Index/remap-complete.c	(revision 115484)
+++ test/Index/remap-complete.c	(working copy)
@@ -1,7 +1,7 @@
 // RUN: c-index-test -code-completion-at=%s:6:2 -remap-file="%s;%S/Inputs/remap-complete-to.c" %s 2> %t.err | FileCheck %s
 // RUN: FileCheck -check-prefix=CHECK-DIAGS %s < %t.err
-// XFAIL: win32
 
+
 // CHECK: FunctionDecl:{ResultType int}{TypedText f0}{LeftParen (}
 void f() { }
 
Index: test/Index/remap-load.c
===================================================================
--- test/Index/remap-load.c	(revision 115484)
+++ test/Index/remap-load.c	(working copy)
@@ -1,7 +1,7 @@
 // RUN: c-index-test -test-load-source all -remap-file="%s;%S/Inputs/remap-load-to.c" %s | FileCheck -check-prefix=CHECK %s
 // RUN: env CINDEXTEST_USE_EXTERNAL_AST_GENERATION=1 c-index-test -test-load-source all -remap-file="%s;%S/Inputs/remap-load-to.c" %s | FileCheck -check-prefix=CHECK %s
-// XFAIL: win32
 
+
 // CHECK: remap-load.c:1:5: FunctionDecl=foo:1:5 (Definition) Extent=[1:5 - 3:2]
 // CHECK: remap-load.c:1:13: ParmDecl=parm1:1:13 (Definition) Extent=[1:9 - 1:18]
 // CHECK: remap-load.c:1:26: ParmDecl=parm2:1:26 (Definition) Extent=[1:20 - 1:31]
Index: tools/c-index-test/c-index-test.c
===================================================================
--- tools/c-index-test/c-index-test.c	(revision 115484)
+++ tools/c-index-test/c-index-test.c	(working copy)
@@ -109,7 +109,7 @@
     }
 
     /* Open the file that we're remapping to. */
-    to_file = fopen(semi + 1, "r");
+    to_file = fopen(semi + 1, "rb");
     if (!to_file) {
       fprintf(stderr, "error: cannot open file %s that we are remapping to\n",
               semi + 1);
Index: tools/libclang/CIndexer.cpp
===================================================================
--- tools/libclang/CIndexer.cpp	(revision 115484)
+++ tools/libclang/CIndexer.cpp	(working copy)
@@ -127,7 +127,8 @@
       return true;
 
     std::string ErrorInfo;
-    llvm::raw_fd_ostream OS(SavedFile.c_str(), ErrorInfo);
+    llvm::raw_fd_ostream OS(SavedFile.c_str(), ErrorInfo,
+                            llvm::raw_fd_ostream::F_Binary);
     if (!ErrorInfo.empty())
       return true;
     
