summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/strfuncs.cc1
2 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index d3d921426..ad149c8c5 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2009-09-22 Corinna Vinschen <corinna@vinschen.de>
+ * strfuncs.cc (sys_cp_mbstowcs): Reset shift state after handling
+ invalid multibyte sequence.
+
+2009-09-22 Corinna Vinschen <corinna@vinschen.de>
+
* path.cc (symlink_worker): Rework error handling to generate Linux
compatible errno in case of trailing slash in newpath.
diff --git a/winsup/cygwin/strfuncs.cc b/winsup/cygwin/strfuncs.cc
index e16d94d86..88bbf767c 100644
--- a/winsup/cygwin/strfuncs.cc
+++ b/winsup/cygwin/strfuncs.cc
@@ -600,6 +600,7 @@ sys_cp_mbstowcs (mbtowc_p f_mbtowc, char *charset, wchar_t *dst, size_t dlen,
decoding errors, seems like the best we can do. */
if (dst)
*ptr = L'\xdc80' | *pmbs;
+ memset (&ps, 0, sizeof ps);
bytes = 1;
}