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
6e610f1e
Commit
6e610f1e
authored
Jan 23, 2011
by
Detlef Riekenberg
Committed by
Alexandre Julliard
Jan 25, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcr90: Implement _stat32, _fstat32, _wstat32.
parent
1b767a59
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
101 additions
and
9 deletions
+101
-9
msvcr100.spec
dlls/msvcr100/msvcr100.spec
+3
-3
msvcr80.spec
dlls/msvcr80/msvcr80.spec
+3
-3
msvcr90.c
dlls/msvcr90/msvcr90.c
+60
-0
msvcr90.spec
dlls/msvcr90/msvcr90.spec
+3
-3
stat.h
include/msvcrt/sys/stat.h
+17
-0
wchar.h
include/msvcrt/wchar.h
+15
-0
No files found.
dlls/msvcr100/msvcr100.spec
View file @
6e610f1e
...
...
@@ -651,7 +651,7 @@
@ cdecl _fseeki64(ptr int64 long) msvcrt._fseeki64
@ stub _fseeki64_nolock
@ cdecl _fsopen(str str long) msvcrt._fsopen
@
stub
_fstat32
@
cdecl _fstat32(long ptr) msvcr90.
_fstat32
@ stub _fstat32i64
@ cdecl _fstat64(long ptr) msvcrt._fstat64
@ cdecl _fstat64i32(long ptr) msvcr90._fstat64i32
...
...
@@ -1123,7 +1123,7 @@
@ stub _sprintf_s_l
@ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
@ varargs _sscanf_s_l(str str ptr) msvcrt._sscanf_s_l
@
stub
_stat32
@
cdecl _stat32(str ptr) msvcr90.
_stat32
@ stub _stat32i64
@ cdecl _stat64(str ptr) msvcrt._stat64
@ cdecl _stat64i32(str ptr) msvcr90._stat64i32
...
...
@@ -1393,7 +1393,7 @@
@ cdecl _wspawnvpe(long wstr ptr ptr) msvcrt._wspawnvpe
@ cdecl _wsplitpath(wstr ptr ptr ptr ptr) msvcrt._wsplitpath
@ cdecl _wsplitpath_s(wstr ptr long ptr long ptr long ptr long) msvcrt._wsplitpath_s
@
stub
_wstat32
@
cdecl _wstat32(wstr ptr) msvcr90.
_wstat32
@ stub _wstat32i64
@ cdecl _wstat64(wstr ptr) msvcrt._wstat64
@ cdecl _wstat64i32(wstr ptr) msvcr90._wstat64i32
...
...
dlls/msvcr80/msvcr80.spec
View file @
6e610f1e
...
...
@@ -492,7 +492,7 @@
@ cdecl _fseeki64(ptr int64 long) msvcrt._fseeki64
@ stub _fseeki64_nolock
@ cdecl _fsopen(str str long) msvcrt._fsopen
@
stub
_fstat32
@
cdecl _fstat32(long ptr) msvcr90.
_fstat32
@ stub _fstat32i64
@ cdecl _fstat64(long ptr) msvcrt._fstat64
@ cdecl _fstat64i32(long ptr) msvcr90._fstat64i32
...
...
@@ -977,7 +977,7 @@
@ stub _sprintf_s_l
@ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
@ varargs _sscanf_s_l(str str ptr) msvcrt._sscanf_s_l
@
stub
_stat32
@
cdecl _stat32(str ptr) msvcr90.
_stat32
@ stub _stat32i64
@ cdecl _stat64(str ptr) msvcrt._stat64
@ cdecl _stat64i32(str ptr) msvcr90._stat64i32
...
...
@@ -1249,7 +1249,7 @@
@ cdecl _wspawnvpe(long wstr ptr ptr) msvcrt._wspawnvpe
@ cdecl _wsplitpath(wstr ptr ptr ptr ptr) msvcrt._wsplitpath
@ cdecl _wsplitpath_s(wstr ptr long ptr long ptr long ptr long) msvcrt._wsplitpath_s
@
stub
_wstat32
@
cdecl _wstat32(wstr ptr) msvcr90.
_wstat32
@ stub _wstat32i64
@ cdecl _wstat64(wstr ptr) msvcrt._wstat64
@ cdecl _wstat64i32(wstr ptr) msvcr90._wstat64i32
...
...
dlls/msvcr90/msvcr90.c
View file @
6e610f1e
...
...
@@ -31,6 +31,24 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
msvcr90
);
/*********************************************************************
* msvcr90_stat64_to_stat32 [internal]
*/
static
void
msvcr90_stat64_to_stat32
(
const
struct
_stat64
*
buf64
,
struct
_stat32
*
buf
)
{
buf
->
st_dev
=
buf64
->
st_dev
;
buf
->
st_ino
=
buf64
->
st_ino
;
buf
->
st_mode
=
buf64
->
st_mode
;
buf
->
st_nlink
=
buf64
->
st_nlink
;
buf
->
st_uid
=
buf64
->
st_uid
;
buf
->
st_gid
=
buf64
->
st_gid
;
buf
->
st_rdev
=
buf64
->
st_rdev
;
buf
->
st_size
=
buf64
->
st_size
;
buf
->
st_atime
=
buf64
->
st_atime
;
buf
->
st_mtime
=
buf64
->
st_mtime
;
buf
->
st_ctime
=
buf64
->
st_ctime
;
}
/*********************************************************************
* DllMain (MSVCR90.@)
*/
BOOL
WINAPI
DllMain
(
HINSTANCE
hdll
,
DWORD
reason
,
LPVOID
reserved
)
...
...
@@ -136,6 +154,48 @@ void* CDECL _recalloc(void* mem, size_t num, size_t size)
}
/*********************************************************************
* _fstat32 (MSVCR90.@)
*/
int
CDECL
_fstat32
(
int
fd
,
struct
_stat32
*
buf
)
{
int
ret
;
struct
_stat64
buf64
;
ret
=
_fstat64
(
fd
,
&
buf64
);
if
(
!
ret
)
msvcr90_stat64_to_stat32
(
&
buf64
,
buf
);
return
ret
;
}
/*********************************************************************
* _stat32 (MSVCR90.@)
*/
int
CDECL
_stat32
(
const
char
*
path
,
struct
_stat32
*
buf
)
{
int
ret
;
struct
_stat64
buf64
;
ret
=
_stat64
(
path
,
&
buf64
);
if
(
!
ret
)
msvcr90_stat64_to_stat32
(
&
buf64
,
buf
);
return
ret
;
}
/*********************************************************************
* _wstat32 (MSVCR90.@)
*/
int
CDECL
_wstat32
(
const
wchar_t
*
path
,
struct
_stat32
*
buf
)
{
int
ret
;
struct
_stat64
buf64
;
ret
=
_wstat64
(
path
,
&
buf64
);
if
(
!
ret
)
msvcr90_stat64_to_stat32
(
&
buf64
,
buf
);
return
ret
;
}
/*********************************************************************
* _fstat64i32 (MSVCRT.@)
*/
...
...
dlls/msvcr90/msvcr90.spec
View file @
6e610f1e
...
...
@@ -484,7 +484,7 @@
@ cdecl _fseeki64(ptr int64 long) msvcrt._fseeki64
@ stub _fseeki64_nolock
@ cdecl _fsopen(str str long) msvcrt._fsopen
@
stub _fstat32
@
cdecl _fstat32(long ptr)
@ stub _fstat32i64
@ cdecl _fstat64(long ptr) msvcrt._fstat64
@ cdecl _fstat64i32(long ptr)
...
...
@@ -963,7 +963,7 @@
@ stub _sprintf_s_l
@ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
@ varargs _sscanf_s_l(str str ptr) msvcrt._sscanf_s_l
@
stub _stat32
@
cdecl _stat32(str ptr)
@ stub _stat32i64
@ cdecl _stat64(str ptr) msvcrt._stat64
@ cdecl _stat64i32(str ptr)
...
...
@@ -1233,7 +1233,7 @@
@ cdecl _wspawnvpe(long wstr ptr ptr) msvcrt._wspawnvpe
@ cdecl _wsplitpath(wstr ptr ptr ptr ptr) msvcrt._wsplitpath
@ cdecl _wsplitpath_s(wstr ptr long ptr long ptr long ptr long) msvcrt._wsplitpath_s
@
stub _wstat32
@
cdecl _wstat32(wstr ptr)
@ stub _wstat32i64
@ cdecl _wstat64(wstr ptr) msvcrt._wstat64
@ cdecl _wstat64i32(wstr ptr)
...
...
include/msvcrt/sys/stat.h
View file @
6e610f1e
...
...
@@ -83,6 +83,20 @@ struct stat {
time_t
st_ctime
;
};
struct
_stat32
{
_dev_t
st_dev
;
_ino_t
st_ino
;
unsigned
short
st_mode
;
short
st_nlink
;
short
st_uid
;
short
st_gid
;
_dev_t
st_rdev
;
_off_t
st_size
;
__time32_t
st_atime
;
__time32_t
st_mtime
;
__time32_t
st_ctime
;
};
struct
_stat32i64
{
_dev_t
st_dev
;
_ino_t
st_ino
;
...
...
@@ -146,6 +160,8 @@ extern "C" {
int
__cdecl
_fstat
(
int
,
struct
_stat
*
);
int
__cdecl
_stat
(
const
char
*
,
struct
_stat
*
);
int
__cdecl
_fstat32
(
int
,
struct
_stat32
*
);
int
__cdecl
_stat32
(
const
char
*
,
struct
_stat32
*
);
int
__cdecl
_fstati64
(
int
,
struct
_stati64
*
);
int
__cdecl
_stati64
(
const
char
*
,
struct
_stati64
*
);
int
__cdecl
_fstat64
(
int
,
struct
_stat64
*
);
...
...
@@ -155,6 +171,7 @@ int __cdecl _umask(int);
#ifndef _WSTAT_DEFINED
#define _WSTAT_DEFINED
int
__cdecl
_wstat
(
const
wchar_t
*
,
struct
_stat
*
);
int
__cdecl
_wstat32
(
const
wchar_t
*
,
struct
_stat32
*
);
int
__cdecl
_wstati64
(
const
wchar_t
*
,
struct
_stati64
*
);
int
__cdecl
_wstat64
(
const
wchar_t
*
,
struct
_stat64
*
);
#endif
/* _WSTAT_DEFINED */
...
...
include/msvcrt/wchar.h
View file @
6e610f1e
...
...
@@ -148,6 +148,20 @@ struct stat {
time_t
st_ctime
;
};
struct
_stat32
{
_dev_t
st_dev
;
_ino_t
st_ino
;
unsigned
short
st_mode
;
short
st_nlink
;
short
st_uid
;
short
st_gid
;
_dev_t
st_rdev
;
_off_t
st_size
;
__time32_t
st_atime
;
__time32_t
st_mtime
;
__time32_t
st_ctime
;
};
struct
_stati64
{
_dev_t
st_dev
;
_ino_t
st_ino
;
...
...
@@ -264,6 +278,7 @@ int __cdecl _wsystem(const wchar_t*);
#ifndef _WSTAT_DEFINED
#define _WSTAT_DEFINED
int
__cdecl
_wstat
(
const
wchar_t
*
,
struct
_stat
*
);
int
__cdecl
_wstat32
(
const
wchar_t
*
,
struct
_stat32
*
);
int
__cdecl
_wstati64
(
const
wchar_t
*
,
struct
_stati64
*
);
int
__cdecl
_wstat64
(
const
wchar_t
*
,
struct
_stat64
*
);
#endif
/* _WSTAT_DEFINED */
...
...
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