 +    int prev_was_space = 0;
 +    int in_string = false;
 +
-+    for (;*srcit!= '\0'; ++srcit) {
++    for (; *srcit != '\0'; ++srcit) {
 +        if (*srcit == '\'' || *srcit == '"') {
 +            if (in_string == *srcit) {
 +                in_string = 0;

diff -Naur msys-orig/winsup/cygwin/msys2_path_conv.cc src/msys2-runtime/winsup/cygwin/msys2_path_conv.cc
--- msys-orig/winsup/cygwin/msys2_path_conv.cc	1970-01-01 03:00:00.000000000 +0300
+++ src/msys2-runtime/winsup/cygwin/msys2_path_conv.cc	2014-03-18 18:15:36.220600000 +0400
@@ -0,0 +1,477 @@
+/*
+  The BSD 3-Clause License. http://www.opensource.org/licenses/BSD-3-Clause
+

+}
+
+const char* convert(char *dst, size_t dstlen, const char *src) {
+    if (dst == NULL || dstlen == 0 || src == NULL) {
+        return dst;
+    }
+
+    const char* srcit = src;
+    const char* srcbeg = src;
+    char* dstit = dst;
