diff options
author | Karl Williamson <public@khwilliamson.com> | 2012-03-19 15:38:06 -0600 |
---|---|---|
committer | Karl Williamson <public@khwilliamson.com> | 2012-03-19 18:23:44 -0600 |
commit | 4b88fb76efce8c436e63b907c9842345d4fa77c7 (patch) | |
tree | 67d8be3146bf0c32e93bd8209c141ed72c5a0ae2 /cygwin | |
parent | 27d6c58a7e12243bef66c58b38e7d1415d9ca07e (diff) | |
download | perl-4b88fb76efce8c436e63b907c9842345d4fa77c7.tar.gz |
Use the new utf8 to code point functions
These functions should be used in preference to the old ones which can
read beyond the end of the input string.
Diffstat (limited to 'cygwin')
-rw-r--r-- | cygwin/cygwin.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cygwin/cygwin.c b/cygwin/cygwin.c index 9419e83aa7..29ee22e0fa 100644 --- a/cygwin/cygwin.c +++ b/cygwin/cygwin.c @@ -176,7 +176,7 @@ utf8_to_wide(const char *buf) setlocale(LC_CTYPE, "utf-8"); wbuf = (wchar_t *) safemalloc(wlen); - /* utf8_to_uvuni(pathname, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ + /* utf8_to_uvuni_buf(pathname, pathname + wlen, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ wlen = mbsrtowcs(wbuf, (const char**)&buf, wlen, &mbs); if (oldlocale) setlocale(LC_CTYPE, oldlocale); @@ -283,7 +283,7 @@ XS(XS_Cygwin_win_to_posix_path) mbstate_t mbs; char *oldlocale = setlocale(LC_CTYPE, NULL); setlocale(LC_CTYPE, "utf-8"); - /* utf8_to_uvuni(src_path, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ + /* utf8_to_uvuni_buf(src_path, src_path + wlen, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ wlen = mbsrtowcs(wpath, (const char**)&src_path, wlen, &mbs); if (wlen > 0) err = cygwin_conv_path(what, wpath, wbuf, wlen); @@ -370,7 +370,7 @@ XS(XS_Cygwin_posix_to_win_path) setlocale(LC_CTYPE, "utf-8"); if (!IN_BYTES) { mbstate_t mbs; - /* utf8_to_uvuni(src_path, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ + /* utf8_to_uvuni_buf(src_path, src_path + wlen, wpath) or Encoding::_utf8_to_bytes(sv, "UCS-2BE"); */ wlen = mbsrtowcs(wpath, (const char**)&src_path, wlen, &mbs); if (wlen > 0) err = cygwin_conv_path(what, wpath, wbuf, wlen); |