[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] win32: provide gmtime_r emulation
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH] win32: provide gmtime_r emulation |
Date: |
Tue, 11 Sep 2012 09:28:29 +0200 |
Windows has _s functions from C99 instead of _r functions from POSIX.
Add an emulation shim.
Signed-off-by: Paolo Bonzini <address@hidden>
---
Not tested beyond compilation.
os-win32.c | 12 ++++++++++++
qemu-os-win32.h | 1 +
2 file modificati, 13 inserzioni(+)
diff --git a/os-win32.c b/os-win32.c
index 13892ba..beeded2 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -55,6 +55,18 @@ int setenv(const char *name, const char *value, int
overwrite)
return result;
}
+struct tm *gmtime_r(const time_t *timep, struct tm *result)
+{
+ int rc;
+ rc = _gmtime32_s(result, timep);
+ if (rc == 0) {
+ return result;
+ } else {
+ errno = rc;
+ return NULL;
+ }
+}
+
static BOOL WINAPI qemu_ctrl_handler(DWORD type)
{
qemu_system_shutdown_request();
diff --git a/qemu-os-win32.h b/qemu-os-win32.h
index 753679b..284cabb 100644
--- a/qemu-os-win32.h
+++ b/qemu-os-win32.h
@@ -79,6 +79,7 @@ static inline void os_set_proc_name(const char *dummy) {}
#endif
int setenv(const char *name, const char *value, int overwrite);
+struct tm *gmtime_r(const time_t *timep, struct tm *result);
typedef struct {
long tv_sec;
--
1.7.11.2
- [Qemu-devel] [PATCH] win32: provide gmtime_r emulation,
Paolo Bonzini <=