Piotr Caban : msvcp90: Reset width value in basic_istream class on error.
Alexandre Julliard
julliard at winehq.org
Wed Aug 15 14:08:33 CDT 2012
Module: wine
Branch: master
Commit: e5d7d65791cb6e8b45e238782b12d897f7317ea5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e5d7d65791cb6e8b45e238782b12d897f7317ea5
Author: Piotr Caban <piotr at codeweavers.com>
Date: Wed Aug 15 10:27:18 2012 +0200
msvcp90: Reset width value in basic_istream class on error.
---
dlls/msvcp90/ios.c | 16 ++++++----------
1 files changed, 6 insertions(+), 10 deletions(-)
diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c
index 43fb46f..78dbd67 100644
--- a/dlls/msvcp90/ios.c
+++ b/dlls/msvcp90/ios.c
@@ -8123,11 +8123,10 @@ basic_istream_char* __cdecl basic_istream_char_read_bstr(
state = IOSTATE_goodbit;
MSVCP_basic_string_char_append_ch(str, c);
}
-
- ios_base_width_set(&base->base, 0);
}
basic_istream_char_sentry_destroy(istream);
+ ios_base_width_set(&base->base, 0);
basic_ios_char_setstate(base, state | (c==EOF ? IOSTATE_eofbit : IOSTATE_goodbit));
return istream;
}
@@ -8156,12 +8155,11 @@ basic_istream_char* __cdecl basic_istream_char_read_str(basic_istream_char *istr
state = IOSTATE_goodbit;
*str++ = c;
}
-
- *str = 0;
- ios_base_width_set(&base->base, 0);
}
basic_istream_char_sentry_destroy(istream);
+ *str = 0;
+ ios_base_width_set(&base->base, 0);
basic_ios_char_setstate(base, state | (c==EOF ? IOSTATE_eofbit : IOSTATE_goodbit));
return istream;
}
@@ -9550,11 +9548,10 @@ static basic_istream_wchar* basic_istream_read_bstr(basic_istream_wchar *istream
state = IOSTATE_goodbit;
MSVCP_basic_string_wchar_append_ch(str, c);
}
-
- ios_base_width_set(&base->base, 0);
}
basic_istream_wchar_sentry_destroy(istream);
+ ios_base_width_set(&base->base, 0);
basic_ios_wchar_setstate(base, state | (c==WEOF ? IOSTATE_eofbit : IOSTATE_goodbit));
return istream;
}
@@ -9594,12 +9591,11 @@ basic_istream_wchar* basic_istream_read_str(basic_istream_wchar *istream, wchar_
state = IOSTATE_goodbit;
*str++ = c;
}
-
- *str = 0;
- ios_base_width_set(&base->base, 0);
}
basic_istream_wchar_sentry_destroy(istream);
+ *str = 0;
+ ios_base_width_set(&base->base, 0);
basic_ios_wchar_setstate(base, state | (c==WEOF ? IOSTATE_eofbit : IOSTATE_goodbit));
return istream;
}
More information about the wine-cvs
mailing list