glib/gthread.c (gettime) GetSystemTimeAsFileTime() returns 100s of

2007-01-16  Tor Lillqvist  <tml@novell.com>

	* glib/gthread.c (gettime)
	* gthread-win32.c (g_gettime_win32_impl):
	GetSystemTimeAsFileTime() returns 100s of nanoseconds since 1601,
	so offset to Unix epoch (1970) and multiply by 100 to get
	nanoseconds which is what we want.


svn path=/trunk/; revision=5277
This commit is contained in:
Tor Lillqvist 2007-01-16 13:57:05 +00:00 committed by Tor Lillqvist
parent 5d65767801
commit 098d17a4fc
4 changed files with 15 additions and 4 deletions

View File

@ -1,8 +1,8 @@
2007-01-16 Tor Lillqvist <tml@novell.com>
* glib/gthread.c (gettime): GetSystemTimeAsFileTime() returns 100s
of nanoseconds, so multiply by 100 to get nanoseconds which is
what we want.
of nanoseconds since 1601, so offset to Unix epoch (1970) and
multiply by 100 to get nanoseconds which is what we want.
2007-01-15 Tor Lillqvist <tml@novell.com>

View File

@ -554,7 +554,12 @@ gettime (void)
#ifdef G_OS_WIN32
guint64 v;
/* Returns 100s of nanoseconds since start of 1601 */
GetSystemTimeAsFileTime ((FILETIME *)&v);
/* Offset to Unix epoch */
v -= G_GINT64_CONSTANT (116444736000000000);
/* Convert to nanoseconds */
v *= 100;
return v;

View File

@ -1,8 +1,9 @@
2007-01-16 Tor Lillqvist <tml@novell.com>
* gthread-win32.c (g_gettime_win32_impl):
GetSystemTimeAsFileTime() returns 100s of nanoseconds, so multiply
by 100 to get nanoseconds which is what we want.
GetSystemTimeAsFileTime() returns 100s of nanoseconds since 1601,
so offset to Unix epoch (1970) and multiply by 100 to get
nanoseconds which is what we want.
2006-12-28 Tor Lillqvist <tml@novell.com>

View File

@ -550,7 +550,12 @@ g_gettime_win32_impl (void)
{
guint64 v;
/* Returns 100s of nanoseconds since start of 1601 */
GetSystemTimeAsFileTime ((FILETIME *)&v);
/* Offset to Unix epoch */
v -= G_GINT64_CONSTANT (116444736000000000);
/* Convert to nanoseconds */
v *= 100;
return v;