Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
9c2c2881
Commit
9c2c2881
authored
Mar 17, 2003
by
Jon Griffiths
Committed by
Alexandre Julliard
Mar 17, 2003
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Move a couple of shared definitions into msvcrt.h.
init_vtables() is redundant with upcoming fixes to cxx functions.
parent
26a39687
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
29 additions
and
8 deletions
+29
-8
main.c
dlls/msvcrt/main.c
+22
-8
msvcrt.h
dlls/msvcrt/msvcrt.h
+7
-0
No files found.
dlls/msvcrt/main.c
View file @
9c2c2881
...
@@ -33,9 +33,6 @@ static inline BOOL msvcrt_init_tls(void);
...
@@ -33,9 +33,6 @@ static inline BOOL msvcrt_init_tls(void);
static
inline
BOOL
msvcrt_free_tls
(
void
);
static
inline
BOOL
msvcrt_free_tls
(
void
);
const
char
*
msvcrt_get_reason
(
DWORD
reason
)
WINE_UNUSED
;
const
char
*
msvcrt_get_reason
(
DWORD
reason
)
WINE_UNUSED
;
typedef
void
*
(
*
MSVCRT_malloc_func
)(
unsigned
int
);
typedef
void
(
*
MSVCRT_free_func
)(
void
*
);
/*********************************************************************
/*********************************************************************
* Init
* Init
*/
*/
...
@@ -54,7 +51,6 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
...
@@ -54,7 +51,6 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
if
(
!
msvcrt_init_tls
())
if
(
!
msvcrt_init_tls
())
return
FALSE
;
return
FALSE
;
msvcrt_init_mt_locks
();
msvcrt_init_mt_locks
();
msvcrt_init_vtables
();
msvcrt_init_io
();
msvcrt_init_io
();
msvcrt_init_console
();
msvcrt_init_console
();
msvcrt_init_args
();
msvcrt_init_args
();
...
@@ -126,19 +122,35 @@ void MSVCRT_I10_OUTPUT(void)
...
@@ -126,19 +122,35 @@ void MSVCRT_I10_OUTPUT(void)
/* FIXME: This is probably data, not a function */
/* FIXME: This is probably data, not a function */
}
}
/*********************************************************************
/*********************************************************************
* __unDName (MSVCRT.@)
* __unDName (MSVCRT.@)
* Function not really understood but needed to make the DLL work
*
* Demangle a C++ identifier.
*
* PARAMS
* unknown [I] Not yet determined
* mangled [I] Mangled name of the function
* unknown2 [I] Not yet determined
* memget [I] Function to allocate memory with
* memfree [I] Function to free memory with
* flags [I] Flags determining demangled format
*
* RETURNS
* Success: A string pointing to the unmangled name, allocated with memget.
* Failure: NULL.
*/
*/
char
*
MSVCRT___unDName
(
int
unknown
,
const
char
*
mangled
,
char
*
MSVCRT___unDName
(
int
unknown
,
const
char
*
mangled
,
int
unknown2
,
MSVCRT_malloc_func
memget
,
MSVCRT_malloc_func
memget
,
MSVCRT_free_func
memfree
,
MSVCRT_free_func
memfree
,
unsigned
int
flags
)
unsigned
int
flags
)
{
{
char
*
ret
;
char
*
ret
;
FIXME
(
"(%d,%s,%p,%p,%x) stub!
\n
"
,
unknown
,
mangled
,
memget
,
memfree
,
flags
);
FIXME
(
"(%d,%s,%d,%p,%p,%x) stub!
\n
"
,
unknown
,
mangled
,
unknown2
,
memget
,
memfree
,
flags
);
/* FIXME: The code in tools/winebuild/msmangle.c is pretty complete and
* could be used here.
*/
/* Experimentation reveals the following flag meanings when set:
/* Experimentation reveals the following flag meanings when set:
* 0x0001 - Dont show __ in calling convention
* 0x0001 - Dont show __ in calling convention
...
@@ -147,7 +159,9 @@ char* MSVCRT___unDName(int unknown, const char* mangled,
...
@@ -147,7 +159,9 @@ char* MSVCRT___unDName(int unknown, const char* mangled,
* 0x0010 - Same as 0x1
* 0x0010 - Same as 0x1
* 0x0080 - Dont show access specifier (public/protected/private)
* 0x0080 - Dont show access specifier (public/protected/private)
* 0x0200 - Dont show static specifier
* 0x0200 - Dont show static specifier
* 0x0800 - Unknown, passed by type_info::name()
* 0x1000 - Only report the variable/class name
* 0x1000 - Only report the variable/class name
* 0x2000 - Unknown, passed by type_info::name()
*/
*/
/* Duplicate the mangled name; for comparisons it doesn't matter anyway */
/* Duplicate the mangled name; for comparisons it doesn't matter anyway */
ret
=
memget
(
strlen
(
mangled
)
+
1
);
ret
=
memget
(
strlen
(
mangled
)
+
1
);
...
...
dlls/msvcrt/msvcrt.h
View file @
9c2c2881
...
@@ -67,6 +67,13 @@ extern MSVCRT_wchar_t ** msvcrt_SnapshotOfEnvironmentW(MSVCRT_wchar_t **);
...
@@ -67,6 +67,13 @@ extern MSVCRT_wchar_t ** msvcrt_SnapshotOfEnvironmentW(MSVCRT_wchar_t **);
*/
*/
int
MSVCRT__set_new_mode
(
int
mode
);
int
MSVCRT__set_new_mode
(
int
mode
);
void
MSVCRT_operator_delete
(
void
*
);
typedef
void
*
(
*
MSVCRT_malloc_func
)(
MSVCRT_size_t
);
typedef
void
(
*
MSVCRT_free_func
)(
void
*
);
extern
char
*
MSVCRT___unDName
(
int
,
const
char
*
,
int
,
MSVCRT_malloc_func
,
MSVCRT_free_func
,
unsigned
int
);
/* Setup and teardown multi threaded locks */
/* Setup and teardown multi threaded locks */
extern
void
msvcrt_init_mt_locks
(
void
);
extern
void
msvcrt_init_mt_locks
(
void
);
extern
void
msvcrt_free_mt_locks
(
void
);
extern
void
msvcrt_free_mt_locks
(
void
);
...
...
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