Piotr Caban : msvcp90: Fixed EOF detection in basic_streambuf_char__Xsgetn_s function.
Alexandre Julliard
julliard at winehq.org
Tue Jul 24 14:39:28 CDT 2012
Module: wine
Branch: master
Commit: 257c57bdf2e7872fb22fba36ca5c15571503f61c
URL: http://source.winehq.org/git/wine.git/?a=commit;h=257c57bdf2e7872fb22fba36ca5c15571503f61c
Author: Piotr Caban <piotr at codeweavers.com>
Date: Tue Jul 24 11:46:56 2012 +0200
msvcp90: Fixed EOF detection in basic_streambuf_char__Xsgetn_s function.
---
dlls/msvcp90/ios.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c
index 13e5490..8592f18 100644
--- a/dlls/msvcp90/ios.c
+++ b/dlls/msvcp90/ios.c
@@ -786,6 +786,7 @@ DEFINE_THISCALL_WRAPPER(basic_streambuf_char__Xsgetn_s, 16)
streamsize __thiscall basic_streambuf_char__Xsgetn_s(basic_streambuf_char *this, char *ptr, MSVCP_size_t size, streamsize count)
{
streamsize copied, chunk;
+ int c;
TRACE("(%p %p %lu %ld)\n", this, ptr, size, count);
@@ -800,7 +801,8 @@ streamsize __thiscall basic_streambuf_char__Xsgetn_s(basic_streambuf_char *this,
*this->prsize -= chunk;
copied += chunk;
size -= chunk;
- }else if((ptr[copied] = call_basic_streambuf_char_uflow(this)) != EOF) {
+ }else if((c = call_basic_streambuf_char_uflow(this)) != EOF) {
+ ptr[copied] = c;
copied++;
size--;
}else {
@@ -1529,6 +1531,7 @@ DEFINE_THISCALL_WRAPPER(basic_streambuf_wchar__Xsgetn_s, 16)
streamsize __thiscall basic_streambuf_wchar__Xsgetn_s(basic_streambuf_wchar *this, wchar_t *ptr, MSVCP_size_t size, streamsize count)
{
streamsize copied, chunk;
+ unsigned short c;
TRACE("(%p %p %lu %ld)\n", this, ptr, size, count);
@@ -1543,7 +1546,8 @@ streamsize __thiscall basic_streambuf_wchar__Xsgetn_s(basic_streambuf_wchar *thi
*this->prsize -= chunk;
copied += chunk;
size -= chunk;
- }else if((ptr[copied] = call_basic_streambuf_wchar_uflow(this)) != WEOF) {
+ }else if((c = call_basic_streambuf_wchar_uflow(this)) != WEOF) {
+ ptr[copied] = c;
copied++;
size--;
}else {
More information about the wine-cvs
mailing list