msvcp90: Added basic_ios::widen implementation.
diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c
index c69b5c5..2b43123 100644
--- a/dlls/msvcp90/ios.c
+++ b/dlls/msvcp90/ios.c
@@ -3259,8 +3259,8 @@
DEFINE_THISCALL_WRAPPER(basic_ios_char_widen, 8)
char __thiscall basic_ios_char_widen(basic_ios_char *this, char ch)
{
- FIXME("(%p %c) stub\n", this, ch);
- return 0;
+ TRACE("(%p %c)\n", this, ch);
+ return ctype_char_widen_ch(ctype_char_use_facet(this->strbuf->loc), ch);
}
@@ -3539,8 +3539,8 @@
DEFINE_THISCALL_WRAPPER(basic_ios_wchar_widen, 8)
wchar_t __thiscall basic_ios_wchar_widen(basic_ios_wchar *this, char ch)
{
- FIXME("(%p %c)\n", this, ch);
- return 0;
+ TRACE("(%p %c)\n", this, ch);
+ return ctype_wchar_widen_ch(ctype_wchar_use_facet(this->strbuf->loc), ch);
}
/* Caution: basic_ostream uses virtual inheritance.
diff --git a/dlls/msvcp90/msvcp90.h b/dlls/msvcp90/msvcp90.h
index 8550ad8..36c4034 100644
--- a/dlls/msvcp90/msvcp90.h
+++ b/dlls/msvcp90/msvcp90.h
@@ -332,6 +332,7 @@
MSVCP_bool __thiscall ctype_char_is_ch(const ctype_char*, short, char);
char __thiscall ctype_char_narrow_ch(const ctype_char*, char, char);
+char __thiscall ctype_char_widen_ch(const ctype_char*, char);
typedef struct {
LCID handle;
@@ -346,6 +347,7 @@
} ctype_wchar;
char __thiscall ctype_wchar_narrow_ch(const ctype_wchar*, wchar_t, char);
+wchar_t __thiscall ctype_wchar_widen_ch(const ctype_wchar*, char);
/* class locale */
typedef struct