commit | 1c0be3864a8745e3d77c2eeda719f2e0a48818ed | [log] [tgz] |
---|---|---|
author | Howard Hinnant <hhinnant@apple.com> | Sat Oct 13 19:31:51 2012 +0000 |
committer | Howard Hinnant <hhinnant@apple.com> | Sat Oct 13 19:31:51 2012 +0000 |
tree | 2662207084ee1a7842aa3dd57b7d89f87812315e | |
parent | 999fc97ef22969aa73f06bf9aa7dfee4f0eef219 [diff] [blame] |
Use traits_type::to_int_type in basic_streambuf<_CharT, _Traits>::xsputn when calling overflow to correctly handle negative signed character types. This fixes http://llvm.org/bugs/show_bug.cgi?id=14074. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@165884 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/streambuf b/include/streambuf index e128be5..e34ad23 100644 --- a/include/streambuf +++ b/include/streambuf
@@ -540,7 +540,7 @@ { if (__nout_ < __eout_) *__nout_++ = *__s; - else if (overflow(*__s) == __eof) + else if (overflow(traits_type::to_int_type(*__s)) == __eof) break; } return __i;