Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
b9fbe6d5
Commit
b9fbe6d5
authored
Jun 15, 2012
by
Piotr Caban
Committed by
Alexandre Julliard
Jun 15, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcp90: Added cin, cout and cerr objects.
parent
e43f6ec6
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
68 additions
and
9 deletions
+68
-9
ios.c
dlls/msvcp90/ios.c
+54
-0
msvcp90.h
dlls/msvcp90/msvcp90.h
+3
-0
msvcp90.spec
dlls/msvcp90/msvcp90.spec
+9
-9
msvcp90_main.c
dlls/msvcp90/msvcp90_main.c
+2
-0
No files found.
dlls/msvcp90/ios.c
View file @
b9fbe6d5
...
...
@@ -5507,3 +5507,57 @@ basic_filebuf_char* __thiscall basic_fstream_char_rdbuf(const basic_fstream_char
TRACE
(
"(%p)
\n
"
,
this
);
return
(
basic_filebuf_char
*
)
&
this
->
filebuf
;
}
static
basic_filebuf_char
filebuf_stdin
;
/* ?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A */
struct
{
basic_istream_char
obj
;
basic_ios_char
vbase
;
}
cin
=
{
{
0
}
};
/* ?_Ptr_cin@std@@3PAV?$basic_istream@DU?$char_traits@D@std@@@1@A */
/* ?_Ptr_cin@std@@3PEAV?$basic_istream@DU?$char_traits@D@std@@@1@EA */
basic_istream_char
*
_Ptr_cin
=
&
cin
.
obj
;
static
basic_filebuf_char
filebuf_stdout
;
/* ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A */
struct
{
basic_ostream_char
obj
;
basic_ios_char
vbase
;
}
cout
=
{
{
0
}
};
/* ?_Ptr_cout@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A */
/* ?_Ptr_cout@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA */
basic_ostream_char
*
_Ptr_cout
=
&
cout
.
obj
;
static
basic_filebuf_char
filebuf_stderr
;
/* ?cerr@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A */
struct
{
basic_ostream_char
obj
;
basic_ios_char
vbase
;
}
cerr
=
{
{
0
}
};
/* ?_Ptr_cerr@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A */
/* ?_Ptr_cerr@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA */
basic_ostream_char
*
_Ptr_cerr
=
&
cerr
.
obj
;
void
init_io
(
void
)
{
basic_filebuf_char_ctor_file
(
&
filebuf_stdin
,
stdin
);
basic_istream_char_ctor
(
&
cin
.
obj
,
&
filebuf_stdin
.
base
,
FALSE
/*FIXME*/
,
TRUE
);
basic_filebuf_char_ctor_file
(
&
filebuf_stdout
,
stdout
);
basic_ostream_char_ctor
(
&
cout
.
obj
,
&
filebuf_stdout
.
base
,
FALSE
/*FIXME*/
,
TRUE
);
basic_filebuf_char_ctor_file
(
&
filebuf_stderr
,
stderr
);
basic_ostream_char_ctor
(
&
cerr
.
obj
,
&
filebuf_stderr
.
base
,
FALSE
/*FIXME*/
,
TRUE
);
}
void
free_io
(
void
)
{
basic_istream_char_dtor
(
&
cin
.
obj
);
basic_filebuf_char_dtor
(
&
filebuf_stdin
);
basic_ostream_char_dtor
(
&
cout
.
obj
);
basic_filebuf_char_dtor
(
&
filebuf_stdout
);
basic_ostream_char_dtor
(
&
cerr
.
obj
);
basic_filebuf_char_dtor
(
&
filebuf_stderr
);
}
dlls/msvcp90/msvcp90.h
View file @
b9fbe6d5
...
...
@@ -371,3 +371,6 @@ mutex* __thiscall mutex_ctor(mutex*);
void
__thiscall
mutex_dtor
(
mutex
*
);
void
__thiscall
mutex_lock
(
mutex
*
);
void
__thiscall
mutex_unlock
(
mutex
*
);
void
init_io
(
void
);
void
free_io
(
void
);
dlls/msvcp90/msvcp90.spec
View file @
b9fbe6d5
...
...
@@ -2694,14 +2694,14 @@
@ cdecl -arch=win64 ?_Pninc@?$basic_streambuf@GU?$char_traits@G@std@@@std@@IEAAPEAGXZ(ptr) basic_streambuf_wchar__Pninc
@ thiscall -arch=win32 ?_Pninc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEPA_WXZ(ptr) basic_streambuf_wchar__Pninc
@ cdecl -arch=win64 ?_Pninc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IEAAPEA_WXZ(ptr) basic_streambuf_wchar__Pninc
# extern -arch=win32 ?_Ptr_cerr@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A
# extern -arch=win64 ?_Ptr_cerr@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA
# extern -arch=win32 ?_Ptr_cin@std@@3PAV?$basic_istream@DU?$char_traits@D@std@@@1@A
# extern -arch=win64 ?_Ptr_cin@std@@3PEAV?$basic_istream@DU?$char_traits@D@std@@@1@EA
@ extern -arch=win32 ?_Ptr_cerr@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A _Ptr_cerr
@ extern -arch=win64 ?_Ptr_cerr@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA _Ptr_cerr
@ extern -arch=win32 ?_Ptr_cin@std@@3PAV?$basic_istream@DU?$char_traits@D@std@@@1@A _Ptr_cin
@ extern -arch=win64 ?_Ptr_cin@std@@3PEAV?$basic_istream@DU?$char_traits@D@std@@@1@EA _Ptr_cin
# extern -arch=win32 ?_Ptr_clog@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A
# extern -arch=win64 ?_Ptr_clog@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA
# extern -arch=win32 ?_Ptr_cout@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A
# extern -arch=win64 ?_Ptr_cout@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA
@ extern -arch=win32 ?_Ptr_cout@std@@3PAV?$basic_ostream@DU?$char_traits@D@std@@@1@A _Ptr_cout
@ extern -arch=win64 ?_Ptr_cout@std@@3PEAV?$basic_ostream@DU?$char_traits@D@std@@@1@EA _Ptr_cout
# extern -arch=win32 ?_Ptr_wcerr@std@@3PAV?$basic_ostream@GU?$char_traits@G@std@@@1@A
# extern -arch=win64 ?_Ptr_wcerr@std@@3PEAV?$basic_ostream@GU?$char_traits@G@std@@@1@EA
# extern -arch=win32 ?_Ptr_wcerr@std@@3PAV?$basic_ostream@_WU?$char_traits@_W@std@@@1@A
...
...
@@ -3053,8 +3053,8 @@
@ cdecl -arch=win64 ?capacity@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QEBA_KXZ(ptr) MSVCP_basic_string_wchar_capacity
@ thiscall -arch=win32 ?capacity@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ(ptr) MSVCP_basic_string_wchar_capacity
@ cdecl -arch=win64 ?capacity@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QEBA_KXZ(ptr) MSVCP_basic_string_wchar_capacity
# extern ?cerr@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
# extern ?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A
@ extern ?cerr@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A cerr
@ extern ?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A cin
@ cdecl -arch=win32 ?classic@locale@std@@SAABV12@XZ() locale_classic
@ cdecl -arch=win64 ?classic@locale@std@@SAAEBV12@XZ() locale_classic
@ cdecl -arch=win32 ?classic_table@?$ctype@D@std@@KAPBFXZ() ctype_char_classic_table
...
...
@@ -3191,7 +3191,7 @@
@ cdecl ?cos@?$_Ctraits@M@std@@SAMM@Z(float) std_Ctraits_float_cos
@ cdecl ?cos@?$_Ctraits@N@std@@SANN@Z(double) std_Ctraits_double_cos
@ cdecl ?cos@?$_Ctraits@O@std@@SAOO@Z(double) std_Ctraits_long_double_cos
# extern ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
@ extern ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A cout
@ stub -arch=win32 ?curr_symbol@?$_Mpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
@ stub -arch=win64 ?curr_symbol@?$_Mpunct@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ
@ stub -arch=win32 ?curr_symbol@?$_Mpunct@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ
...
...
dlls/msvcp90/msvcp90_main.c
View file @
b9fbe6d5
...
...
@@ -90,8 +90,10 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
case
DLL_PROCESS_ATTACH
:
init_cxx_funcs
();
init_lockit
();
init_io
();
break
;
case
DLL_PROCESS_DETACH
:
free_io
();
free_locale
();
free_lockit
();
break
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment