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
5c95bec8
Commit
5c95bec8
authored
Oct 25, 2012
by
Erich Hoover
Committed by
Alexandre Julliard
Oct 30, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Implement nanosecond precision file time storage.
parent
487c50c1
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
23 additions
and
1 deletion
+23
-1
configure
configure
+1
-0
configure.ac
configure.ac
+1
-0
file.c
dlls/ntdll/file.c
+18
-1
config.h.in
include/config.h.in
+3
-0
No files found.
configure
View file @
5c95bec8
...
@@ -13012,6 +13012,7 @@ for ac_func in \
...
@@ -13012,6 +13012,7 @@ for ac_func in \
fstatfs
\
fstatfs
\
fstatvfs
\
fstatvfs
\
ftruncate
\
ftruncate
\
futimens
\
futimes
\
futimes
\
futimesat
\
futimesat
\
getattrlist
\
getattrlist
\
...
...
configure.ac
View file @
5c95bec8
...
@@ -2014,6 +2014,7 @@ AC_CHECK_FUNCS(\
...
@@ -2014,6 +2014,7 @@ AC_CHECK_FUNCS(\
fstatfs \
fstatfs \
fstatvfs \
fstatvfs \
ftruncate \
ftruncate \
futimens \
futimes \
futimes \
futimesat \
futimesat \
getattrlist \
getattrlist \
...
...
dlls/ntdll/file.c
View file @
5c95bec8
...
@@ -1562,7 +1562,24 @@ static NTSTATUS set_file_times( int fd, const LARGE_INTEGER *mtime, const LARGE_
...
@@ -1562,7 +1562,24 @@ static NTSTATUS set_file_times( int fd, const LARGE_INTEGER *mtime, const LARGE_
{
{
NTSTATUS
status
=
STATUS_SUCCESS
;
NTSTATUS
status
=
STATUS_SUCCESS
;
#if defined(HAVE_FUTIMES) || defined(HAVE_FUTIMESAT)
#ifdef HAVE_FUTIMENS
struct
timespec
tv
[
2
];
tv
[
0
].
tv_sec
=
tv
[
1
].
tv_sec
=
0
;
tv
[
0
].
tv_nsec
=
tv
[
1
].
tv_nsec
=
UTIME_OMIT
;
if
(
atime
->
QuadPart
)
{
tv
[
0
].
tv_sec
=
atime
->
QuadPart
/
10000000
-
SECS_1601_TO_1970
;
tv
[
0
].
tv_nsec
=
(
atime
->
QuadPart
%
10000000
)
*
100
;
}
if
(
mtime
->
QuadPart
)
{
tv
[
1
].
tv_sec
=
mtime
->
QuadPart
/
10000000
-
SECS_1601_TO_1970
;
tv
[
1
].
tv_nsec
=
(
mtime
->
QuadPart
%
10000000
)
*
100
;
}
if
(
futimens
(
fd
,
tv
)
==
-
1
)
status
=
FILE_GetNtStatus
();
#elif defined(HAVE_FUTIMES) || defined(HAVE_FUTIMESAT)
struct
timeval
tv
[
2
];
struct
timeval
tv
[
2
];
struct
stat
st
;
struct
stat
st
;
...
...
include/config.h.in
View file @
5c95bec8
...
@@ -179,6 +179,9 @@
...
@@ -179,6 +179,9 @@
/* Define to 1 if the system has the type `FT_TrueTypeEngineType'. */
/* Define to 1 if the system has the type `FT_TrueTypeEngineType'. */
#undef HAVE_FT_TRUETYPEENGINETYPE
#undef HAVE_FT_TRUETYPEENGINETYPE
/* Define to 1 if you have the `futimens' function. */
#undef HAVE_FUTIMENS
/* Define to 1 if you have the `futimes' function. */
/* Define to 1 if you have the `futimes' function. */
#undef HAVE_FUTIMES
#undef HAVE_FUTIMES
...
...
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