Commit a26119d2 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msvcp: Sync implementations.

parent 4a566ed3
...@@ -629,7 +629,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this) ...@@ -629,7 +629,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this)
if(call_basic_streambuf_char_underflow(this)==EOF) if(call_basic_streambuf_char_underflow(this)==EOF)
return EOF; return EOF;
ret = **this->prpos; ret = (unsigned char)**this->prpos;
(*this->prsize)--; (*this->prsize)--;
(*this->prpos)++; (*this->prpos)++;
return ret; return ret;
...@@ -965,10 +965,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c ...@@ -965,10 +965,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c
if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) { if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return ch; return (unsigned char)ch;
} }
return call_basic_streambuf_char_pbackfail(this, ch); return call_basic_streambuf_char_pbackfail(this, (unsigned char)ch);
} }
/* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */ /* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */
...@@ -979,7 +979,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch) ...@@ -979,7 +979,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch)
TRACE("(%p %d)\n", this, ch); TRACE("(%p %d)\n", this, ch);
return basic_streambuf_char__Pnavail(this) ? return basic_streambuf_char__Pnavail(this) ?
(*basic_streambuf_char__Pninc(this) = ch) : (*basic_streambuf_char__Pninc(this) = ch) :
call_basic_streambuf_char_overflow(this, ch); call_basic_streambuf_char_overflow(this, (unsigned char)ch);
} }
/* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -991,7 +991,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this) ...@@ -991,7 +991,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this)
if(*this->prpos && *this->prpos>*this->prbuf) { if(*this->prpos && *this->prpos>*this->prbuf) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return **this->prpos; return (unsigned char)**this->prpos;
} }
return call_basic_streambuf_char_pbackfail(this, EOF); return call_basic_streambuf_char_pbackfail(this, EOF);
...@@ -1016,7 +1016,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this) ...@@ -1016,7 +1016,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this); (int)(unsigned char)*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this);
} }
/* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1026,7 +1026,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this) ...@@ -1026,7 +1026,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this); (int)(unsigned char)*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this);
} }
/* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1037,7 +1037,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this) ...@@ -1037,7 +1037,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char__Gnavail(this) > 1) if(basic_streambuf_char__Gnavail(this) > 1)
return *basic_streambuf_char__Gnpreinc(this); return (unsigned char)*basic_streambuf_char__Gnpreinc(this);
return basic_streambuf_char_sbumpc(this)==EOF ? return basic_streambuf_char_sbumpc(this)==EOF ?
EOF : basic_streambuf_char_sgetc(this); EOF : basic_streambuf_char_sgetc(this);
} }
...@@ -1074,7 +1074,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co ...@@ -1074,7 +1074,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co
*this->pwpos += chunk; *this->pwpos += chunk;
*this->pwsize -= chunk; *this->pwsize -= chunk;
copied += chunk; copied += chunk;
}else if(call_basic_streambuf_char_overflow(this, ptr[copied]) != EOF) { }else if(call_basic_streambuf_char_overflow(this, (unsigned char)ptr[copied]) != EOF) {
copied++; copied++;
}else { }else {
break; break;
...@@ -2201,7 +2201,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c) ...@@ -2201,7 +2201,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base) if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base)
&& (c==EOF || basic_streambuf_char_gptr(&this->base)[-1]==(char)c)) { && (c==EOF || (int)(unsigned char)basic_streambuf_char_gptr(&this->base)[-1]==c)) {
basic_streambuf_char__Gndec(&this->base); basic_streambuf_char__Gndec(&this->base);
return c==EOF ? !c : c; return c==EOF ? !c : c;
}else if(c!=EOF && !this->cvt) { }else if(c!=EOF && !this->cvt) {
...@@ -2226,7 +2226,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2226,7 +2226,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char__Gninc(&this->base); return (unsigned char)*basic_streambuf_char__Gninc(&this->base);
c = fgetc(this->file); c = fgetc(this->file);
if(!this->cvt || c==EOF) if(!this->cvt || c==EOF)
...@@ -2251,7 +2251,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2251,7 +2251,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
ungetc(buf[i], this->file); ungetc(buf[i], this->file);
return ch; return ch;
case CODECVT_noconv: case CODECVT_noconv:
return buf[0]; return (unsigned char)buf[0];
default: default:
return EOF; return EOF;
} }
...@@ -2271,7 +2271,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this) ...@@ -2271,7 +2271,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char_gptr(&this->base); return (unsigned char)*basic_streambuf_char_gptr(&this->base);
ret = call_basic_streambuf_char_uflow(&this->base); ret = call_basic_streambuf_char_uflow(&this->base);
if(ret != EOF) if(ret != EOF)
...@@ -2642,7 +2642,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi ...@@ -2642,7 +2642,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi
return WEOF; return WEOF;
if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base) if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base)
&& (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==(wchar_t)c)) { && (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==c)) {
basic_streambuf_wchar__Gndec(&this->base); basic_streambuf_wchar__Gndec(&this->base);
return c==WEOF ? !c : c; return c==WEOF ? !c : c;
}else if(c!=WEOF && !this->cvt) { }else if(c!=WEOF && !this->cvt) {
...@@ -5690,7 +5690,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 20) ...@@ -5690,7 +5690,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 20)
basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim) basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim)
{ {
basic_ios_char *base = basic_istream_char_get_basic_ios(this); basic_ios_char *base = basic_istream_char_get_basic_ios(this);
int ch = delim; int ch = (unsigned char)delim;
TRACE("(%p %p %s %c)\n", this, str, wine_dbgstr_longlong(count), delim); TRACE("(%p %p %s %c)\n", this, str, wine_dbgstr_longlong(count), delim);
...@@ -5702,7 +5702,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -5702,7 +5702,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
while(count > 1) { while(count > 1) {
ch = basic_streambuf_char_sbumpc(strbuf); ch = basic_streambuf_char_sbumpc(strbuf);
if(ch==EOF || ch==delim) if(ch==EOF || ch==(unsigned char)delim)
break; break;
*str++ = ch; *str++ = ch;
...@@ -5710,12 +5710,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -5710,12 +5710,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
count--; count--;
} }
if(ch == delim) if(ch == (unsigned char)delim)
this->count++; this->count++;
else if(ch != EOF) { else if(ch != EOF) {
ch = basic_streambuf_char_sgetc(strbuf); ch = basic_streambuf_char_sgetc(strbuf);
if(ch == delim) { if(ch == (unsigned char)delim) {
basic_streambuf_char__Gninc(strbuf); basic_streambuf_char__Gninc(strbuf);
this->count++; this->count++;
} }
...@@ -5724,7 +5724,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -5724,7 +5724,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
basic_istream_char_sentry_destroy(this); basic_istream_char_sentry_destroy(this);
basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) | basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) |
(!this->count || (ch!=delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit)); (!this->count || (ch!=(unsigned char)delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit));
if(count > 0) if(count > 0)
*str = 0; *str = 0;
return this; return this;
...@@ -5744,7 +5744,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_ignore, 16) ...@@ -5744,7 +5744,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_ignore, 16)
basic_istream_char* __thiscall basic_istream_char_ignore(basic_istream_char *this, streamsize count, int delim) basic_istream_char* __thiscall basic_istream_char_ignore(basic_istream_char *this, streamsize count, int delim)
{ {
basic_ios_char *base = basic_istream_char_get_basic_ios(this); basic_ios_char *base = basic_istream_char_get_basic_ios(this);
int ch = delim; int ch = (unsigned char)delim;
TRACE("(%p %s %d)\n", this, wine_dbgstr_longlong(count), delim); TRACE("(%p %s %d)\n", this, wine_dbgstr_longlong(count), delim);
...@@ -5756,7 +5756,7 @@ basic_istream_char* __thiscall basic_istream_char_ignore(basic_istream_char *thi ...@@ -5756,7 +5756,7 @@ basic_istream_char* __thiscall basic_istream_char_ignore(basic_istream_char *thi
while(count > 0) { while(count > 0) {
ch = basic_streambuf_char_sbumpc(strbuf); ch = basic_streambuf_char_sbumpc(strbuf);
if(ch==EOF || ch==delim) if(ch==EOF || ch==(unsigned char)delim)
break; break;
this->count++; this->count++;
......
...@@ -1088,7 +1088,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this) ...@@ -1088,7 +1088,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this)
if(call_basic_streambuf_char_underflow(this)==EOF) if(call_basic_streambuf_char_underflow(this)==EOF)
return EOF; return EOF;
ret = **this->prpos; ret = (unsigned char)**this->prpos;
(*this->prsize)--; (*this->prsize)--;
(*this->prpos)++; (*this->prpos)++;
return ret; return ret;
...@@ -1390,10 +1390,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c ...@@ -1390,10 +1390,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c
if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) { if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return ch; return (unsigned char)ch;
} }
return call_basic_streambuf_char_pbackfail(this, ch); return call_basic_streambuf_char_pbackfail(this, (unsigned char)ch);
} }
/* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */ /* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */
...@@ -1404,7 +1404,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch) ...@@ -1404,7 +1404,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch)
TRACE("(%p %d)\n", this, ch); TRACE("(%p %d)\n", this, ch);
return basic_streambuf_char__Pnavail(this) ? return basic_streambuf_char__Pnavail(this) ?
(*basic_streambuf_char__Pninc(this) = ch) : (*basic_streambuf_char__Pninc(this) = ch) :
call_basic_streambuf_char_overflow(this, ch); call_basic_streambuf_char_overflow(this, (unsigned char)ch);
} }
/* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1416,7 +1416,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this) ...@@ -1416,7 +1416,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this)
if(*this->prpos && *this->prpos>*this->prbuf) { if(*this->prpos && *this->prpos>*this->prbuf) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return **this->prpos; return (unsigned char)**this->prpos;
} }
return call_basic_streambuf_char_pbackfail(this, EOF); return call_basic_streambuf_char_pbackfail(this, EOF);
...@@ -1441,7 +1441,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this) ...@@ -1441,7 +1441,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this); (int)(unsigned char)*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this);
} }
/* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1451,7 +1451,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this) ...@@ -1451,7 +1451,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this); (int)(unsigned char)*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this);
} }
/* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1462,7 +1462,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this) ...@@ -1462,7 +1462,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char__Gnavail(this) > 1) if(basic_streambuf_char__Gnavail(this) > 1)
return *basic_streambuf_char__Gnpreinc(this); return (unsigned char)*basic_streambuf_char__Gnpreinc(this);
return basic_streambuf_char_sbumpc(this)==EOF ? return basic_streambuf_char_sbumpc(this)==EOF ?
EOF : basic_streambuf_char_sgetc(this); EOF : basic_streambuf_char_sgetc(this);
} }
...@@ -1499,7 +1499,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co ...@@ -1499,7 +1499,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co
*this->pwpos += chunk; *this->pwpos += chunk;
*this->pwsize -= chunk; *this->pwsize -= chunk;
copied += chunk; copied += chunk;
}else if(call_basic_streambuf_char_overflow(this, ptr[copied]) != EOF) { }else if(call_basic_streambuf_char_overflow(this, (unsigned char)ptr[copied]) != EOF) {
copied++; copied++;
}else { }else {
break; break;
...@@ -2668,7 +2668,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c) ...@@ -2668,7 +2668,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base) if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base)
&& (c==EOF || basic_streambuf_char_gptr(&this->base)[-1]==(char)c)) { && (c==EOF || (int)(unsigned char)basic_streambuf_char_gptr(&this->base)[-1]==c)) {
basic_streambuf_char__Gndec(&this->base); basic_streambuf_char__Gndec(&this->base);
return c==EOF ? !c : c; return c==EOF ? !c : c;
}else if(c!=EOF && !this->cvt) { }else if(c!=EOF && !this->cvt) {
...@@ -2693,7 +2693,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2693,7 +2693,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char__Gninc(&this->base); return (unsigned char)*basic_streambuf_char__Gninc(&this->base);
c = fgetc(this->file); c = fgetc(this->file);
if(!this->cvt || c==EOF) if(!this->cvt || c==EOF)
...@@ -2718,7 +2718,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2718,7 +2718,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
ungetc(buf[i], this->file); ungetc(buf[i], this->file);
return ch; return ch;
case CODECVT_noconv: case CODECVT_noconv:
return buf[0]; return (unsigned char)buf[0];
default: default:
return EOF; return EOF;
} }
...@@ -2738,7 +2738,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this) ...@@ -2738,7 +2738,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char_gptr(&this->base); return (unsigned char)*basic_streambuf_char_gptr(&this->base);
ret = call_basic_streambuf_char_uflow(&this->base); ret = call_basic_streambuf_char_uflow(&this->base);
if(ret != EOF) if(ret != EOF)
...@@ -3189,7 +3189,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi ...@@ -3189,7 +3189,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi
return WEOF; return WEOF;
if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base) if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base)
&& (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==(wchar_t)c)) { && (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==c)) {
basic_streambuf_wchar__Gndec(&this->base); basic_streambuf_wchar__Gndec(&this->base);
return c==WEOF ? !c : c; return c==WEOF ? !c : c;
}else if(c!=WEOF && !this->cvt) { }else if(c!=WEOF && !this->cvt) {
...@@ -3660,7 +3660,7 @@ int __thiscall basic_stringbuf_char_underflow(basic_stringbuf_char *this) ...@@ -3660,7 +3660,7 @@ int __thiscall basic_stringbuf_char_underflow(basic_stringbuf_char *this)
basic_streambuf_char_setg(&this->base, basic_streambuf_char_eback(&this->base), cur, this->seekhigh); basic_streambuf_char_setg(&this->base, basic_streambuf_char_eback(&this->base), cur, this->seekhigh);
if(cur < this->seekhigh) if(cur < this->seekhigh)
return *cur; return (unsigned char)*cur;
return EOF; return EOF;
} }
...@@ -7081,7 +7081,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 16) ...@@ -7081,7 +7081,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 16)
basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim) basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim)
{ {
basic_ios_char *base = basic_istream_char_get_basic_ios(this); basic_ios_char *base = basic_istream_char_get_basic_ios(this);
int ch = delim; int ch = (unsigned char)delim;
TRACE("(%p %p %ld %c)\n", this, str, count, delim); TRACE("(%p %p %ld %c)\n", this, str, count, delim);
...@@ -7093,7 +7093,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7093,7 +7093,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
while(count > 1) { while(count > 1) {
ch = basic_streambuf_char_sbumpc(strbuf); ch = basic_streambuf_char_sbumpc(strbuf);
if(ch==EOF || ch==delim) if(ch==EOF || ch==(unsigned char)delim)
break; break;
*str++ = ch; *str++ = ch;
...@@ -7101,12 +7101,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7101,12 +7101,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
count--; count--;
} }
if(ch == delim) if(ch == (unsigned char)delim)
this->count++; this->count++;
else if(ch != EOF) { else if(ch != EOF) {
ch = basic_streambuf_char_sgetc(strbuf); ch = basic_streambuf_char_sgetc(strbuf);
if(ch == delim) { if(ch == (unsigned char)delim) {
basic_streambuf_char__Gninc(strbuf); basic_streambuf_char__Gninc(strbuf);
this->count++; this->count++;
} }
...@@ -7115,7 +7115,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7115,7 +7115,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
basic_istream_char_sentry_destroy(this); basic_istream_char_sentry_destroy(this);
basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) | basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) |
(!this->count || (ch!=delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit)); (!this->count || (ch!=(unsigned char)delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit));
if(count > 0) if(count > 0)
*str = 0; *str = 0;
return this; return this;
...@@ -7763,7 +7763,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim( ...@@ -7763,7 +7763,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim(
basic_istream_char *istream, basic_string_char *str, char delim) basic_istream_char *istream, basic_string_char *str, char delim)
{ {
IOSB_iostate state = IOSTATE_failbit; IOSB_iostate state = IOSTATE_failbit;
int c = delim; int c = (unsigned char)delim;
TRACE("(%p %p %c)\n", istream, str, delim); TRACE("(%p %p %c)\n", istream, str, delim);
...@@ -7774,7 +7774,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim( ...@@ -7774,7 +7774,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim(
if(c != EOF) if(c != EOF)
state = IOSTATE_goodbit; state = IOSTATE_goodbit;
for(; c!=delim && c!=EOF; c = basic_istream_char_get(istream)) { for(; c!=(unsigned char)delim && c!=EOF; c = basic_istream_char_get(istream)) {
state = IOSTATE_goodbit; state = IOSTATE_goodbit;
basic_string_char_append_ch(str, c); basic_string_char_append_ch(str, c);
} }
......
...@@ -1095,7 +1095,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this) ...@@ -1095,7 +1095,7 @@ int __thiscall basic_streambuf_char_uflow(basic_streambuf_char *this)
if(call_basic_streambuf_char_underflow(this)==EOF) if(call_basic_streambuf_char_underflow(this)==EOF)
return EOF; return EOF;
ret = **this->prpos; ret = (unsigned char)**this->prpos;
(*this->prsize)--; (*this->prsize)--;
(*this->prpos)++; (*this->prpos)++;
return ret; return ret;
...@@ -1429,10 +1429,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c ...@@ -1429,10 +1429,10 @@ int __thiscall basic_streambuf_char_sputbackc(basic_streambuf_char *this, char c
if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) { if(*this->prpos && *this->prpos>*this->prbuf && (*this->prpos)[-1]==ch) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return ch; return (unsigned char)ch;
} }
return call_basic_streambuf_char_pbackfail(this, ch); return call_basic_streambuf_char_pbackfail(this, (unsigned char)ch);
} }
/* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */ /* ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z */
...@@ -1443,7 +1443,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch) ...@@ -1443,7 +1443,7 @@ int __thiscall basic_streambuf_char_sputc(basic_streambuf_char *this, char ch)
TRACE("(%p %d)\n", this, ch); TRACE("(%p %d)\n", this, ch);
return basic_streambuf_char__Pnavail(this) ? return basic_streambuf_char__Pnavail(this) ?
(*basic_streambuf_char__Pninc(this) = ch) : (*basic_streambuf_char__Pninc(this) = ch) :
call_basic_streambuf_char_overflow(this, ch); call_basic_streambuf_char_overflow(this, (unsigned char)ch);
} }
/* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sungetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1455,7 +1455,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this) ...@@ -1455,7 +1455,7 @@ int __thiscall basic_streambuf_char_sungetc(basic_streambuf_char *this)
if(*this->prpos && *this->prpos>*this->prbuf) { if(*this->prpos && *this->prpos>*this->prbuf) {
(*this->prsize)++; (*this->prsize)++;
(*this->prpos)--; (*this->prpos)--;
return **this->prpos; return (unsigned char)**this->prpos;
} }
return call_basic_streambuf_char_pbackfail(this, EOF); return call_basic_streambuf_char_pbackfail(this, EOF);
...@@ -1480,7 +1480,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this) ...@@ -1480,7 +1480,7 @@ int __thiscall basic_streambuf_char_sbumpc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this); (int)(unsigned char)*basic_streambuf_char__Gninc(this) : call_basic_streambuf_char_uflow(this);
} }
/* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1490,7 +1490,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this) ...@@ -1490,7 +1490,7 @@ int __thiscall basic_streambuf_char_sgetc(basic_streambuf_char *this)
{ {
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
return basic_streambuf_char__Gnavail(this) ? return basic_streambuf_char__Gnavail(this) ?
*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this); (int)(unsigned char)*basic_streambuf_char_gptr(this) : call_basic_streambuf_char_underflow(this);
} }
/* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */ /* ?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ */
...@@ -1501,7 +1501,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this) ...@@ -1501,7 +1501,7 @@ int __thiscall basic_streambuf_char_snextc(basic_streambuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char__Gnavail(this) > 1) if(basic_streambuf_char__Gnavail(this) > 1)
return *basic_streambuf_char__Gnpreinc(this); return (unsigned char)*basic_streambuf_char__Gnpreinc(this);
return basic_streambuf_char_sbumpc(this)==EOF ? return basic_streambuf_char_sbumpc(this)==EOF ?
EOF : basic_streambuf_char_sgetc(this); EOF : basic_streambuf_char_sgetc(this);
} }
...@@ -1538,7 +1538,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co ...@@ -1538,7 +1538,7 @@ streamsize __thiscall basic_streambuf_char_xsputn(basic_streambuf_char *this, co
*this->pwpos += chunk; *this->pwpos += chunk;
*this->pwsize -= chunk; *this->pwsize -= chunk;
copied += chunk; copied += chunk;
}else if(call_basic_streambuf_char_overflow(this, ptr[copied]) != EOF) { }else if(call_basic_streambuf_char_overflow(this, (unsigned char)ptr[copied]) != EOF) {
copied++; copied++;
}else { }else {
break; break;
...@@ -2735,7 +2735,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c) ...@@ -2735,7 +2735,7 @@ int __thiscall basic_filebuf_char_pbackfail(basic_filebuf_char *this, int c)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base) if(basic_streambuf_char_gptr(&this->base)>basic_streambuf_char_eback(&this->base)
&& (c==EOF || basic_streambuf_char_gptr(&this->base)[-1]==(char)c)) { && (c==EOF || (int)(unsigned char)basic_streambuf_char_gptr(&this->base)[-1]==c)) {
basic_streambuf_char__Gndec(&this->base); basic_streambuf_char__Gndec(&this->base);
return c==EOF ? !c : c; return c==EOF ? !c : c;
}else if(c!=EOF && !this->cvt) { }else if(c!=EOF && !this->cvt) {
...@@ -2760,7 +2760,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2760,7 +2760,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
return EOF; return EOF;
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char__Gninc(&this->base); return (unsigned char)*basic_streambuf_char__Gninc(&this->base);
c = fgetc(this->file); c = fgetc(this->file);
if(!this->cvt || c==EOF) if(!this->cvt || c==EOF)
...@@ -2785,7 +2785,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this) ...@@ -2785,7 +2785,7 @@ int __thiscall basic_filebuf_char_uflow(basic_filebuf_char *this)
ungetc(buf[i], this->file); ungetc(buf[i], this->file);
return ch; return ch;
case CODECVT_noconv: case CODECVT_noconv:
return buf[0]; return (unsigned char)buf[0];
default: default:
return EOF; return EOF;
} }
...@@ -2805,7 +2805,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this) ...@@ -2805,7 +2805,7 @@ int __thiscall basic_filebuf_char_underflow(basic_filebuf_char *this)
TRACE("(%p)\n", this); TRACE("(%p)\n", this);
if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base)) if(basic_streambuf_char_gptr(&this->base) < basic_streambuf_char_egptr(&this->base))
return *basic_streambuf_char_gptr(&this->base); return (unsigned char)*basic_streambuf_char_gptr(&this->base);
ret = call_basic_streambuf_char_uflow(&this->base); ret = call_basic_streambuf_char_uflow(&this->base);
if(ret != EOF) if(ret != EOF)
...@@ -3311,7 +3311,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi ...@@ -3311,7 +3311,7 @@ unsigned short __thiscall basic_filebuf_wchar_pbackfail(basic_filebuf_wchar *thi
return WEOF; return WEOF;
if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base) if(basic_streambuf_wchar_gptr(&this->base)>basic_streambuf_wchar_eback(&this->base)
&& (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==(wchar_t)c)) { && (c==WEOF || basic_streambuf_wchar_gptr(&this->base)[-1]==c)) {
basic_streambuf_wchar__Gndec(&this->base); basic_streambuf_wchar__Gndec(&this->base);
return c==WEOF ? !c : c; return c==WEOF ? !c : c;
}else if(c!=WEOF && !this->cvt) { }else if(c!=WEOF && !this->cvt) {
...@@ -3783,7 +3783,7 @@ int __thiscall basic_stringbuf_char_underflow(basic_stringbuf_char *this) ...@@ -3783,7 +3783,7 @@ int __thiscall basic_stringbuf_char_underflow(basic_stringbuf_char *this)
basic_streambuf_char_setg(&this->base, basic_streambuf_char_eback(&this->base), cur, this->seekhigh); basic_streambuf_char_setg(&this->base, basic_streambuf_char_eback(&this->base), cur, this->seekhigh);
if(cur < this->seekhigh) if(cur < this->seekhigh)
return *cur; return (unsigned char)*cur;
return EOF; return EOF;
} }
...@@ -7413,7 +7413,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 16) ...@@ -7413,7 +7413,7 @@ DEFINE_THISCALL_WRAPPER(basic_istream_char_getline_delim, 16)
basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim) basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_char *this, char *str, streamsize count, char delim)
{ {
basic_ios_char *base = basic_istream_char_get_basic_ios(this); basic_ios_char *base = basic_istream_char_get_basic_ios(this);
int ch = delim; int ch = (unsigned char)delim;
TRACE("(%p %p %ld %c)\n", this, str, count, delim); TRACE("(%p %p %ld %c)\n", this, str, count, delim);
...@@ -7425,7 +7425,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7425,7 +7425,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
while(count > 1) { while(count > 1) {
ch = basic_streambuf_char_sbumpc(strbuf); ch = basic_streambuf_char_sbumpc(strbuf);
if(ch==EOF || ch==delim) if(ch==EOF || ch==(unsigned char)delim)
break; break;
*str++ = ch; *str++ = ch;
...@@ -7433,12 +7433,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7433,12 +7433,12 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
count--; count--;
} }
if(ch == delim) if(ch == (unsigned char)delim)
this->count++; this->count++;
else if(ch != EOF) { else if(ch != EOF) {
ch = basic_streambuf_char_sgetc(strbuf); ch = basic_streambuf_char_sgetc(strbuf);
if(ch == delim) { if(ch == (unsigned char)delim) {
basic_streambuf_char__Gninc(strbuf); basic_streambuf_char__Gninc(strbuf);
this->count++; this->count++;
} }
...@@ -7447,7 +7447,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch ...@@ -7447,7 +7447,7 @@ basic_istream_char* __thiscall basic_istream_char_getline_delim(basic_istream_ch
basic_istream_char_sentry_destroy(this); basic_istream_char_sentry_destroy(this);
basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) | basic_ios_char_setstate(base, (ch==EOF ? IOSTATE_eofbit : IOSTATE_goodbit) |
(!this->count || (ch!=delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit)); (!this->count || (ch!=(unsigned char)delim && ch!=EOF) ? IOSTATE_failbit : IOSTATE_goodbit));
if(count > 0) if(count > 0)
*str = 0; *str = 0;
return this; return this;
...@@ -8095,7 +8095,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim( ...@@ -8095,7 +8095,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim(
basic_istream_char *istream, basic_string_char *str, char delim) basic_istream_char *istream, basic_string_char *str, char delim)
{ {
IOSB_iostate state = IOSTATE_failbit; IOSB_iostate state = IOSTATE_failbit;
int c = delim; int c = (unsigned char)delim;
TRACE("(%p %p %c)\n", istream, str, delim); TRACE("(%p %p %c)\n", istream, str, delim);
...@@ -8106,7 +8106,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim( ...@@ -8106,7 +8106,7 @@ basic_istream_char* __cdecl basic_istream_char_getline_bstr_delim(
if(c != EOF) if(c != EOF)
state = IOSTATE_goodbit; state = IOSTATE_goodbit;
for(; c!=delim && c!=EOF; c = basic_istream_char_get(istream)) { for(; c!=(unsigned char)delim && c!=EOF; c = basic_istream_char_get(istream)) {
state = IOSTATE_goodbit; state = IOSTATE_goodbit;
MSVCP_basic_string_char_append_ch(str, c); MSVCP_basic_string_char_append_ch(str, c);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment