summaryrefslogtreecommitdiff
path: root/ruby_1_8_6/wince/sys/utime.c
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_1_8_6/wince/sys/utime.c')
-rw-r--r--ruby_1_8_6/wince/sys/utime.c44
1 files changed, 0 insertions, 44 deletions
diff --git a/ruby_1_8_6/wince/sys/utime.c b/ruby_1_8_6/wince/sys/utime.c
deleted file mode 100644
index 0139c13828..0000000000
--- a/ruby_1_8_6/wince/sys/utime.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/***************************************************************
- utime.c
-***************************************************************/
-
-#include <windows.h>
-#include <sys/utime.h>
-#include "..\wince.h" /* for wce_mbtowc */
-
-
-#ifdef _WIN32_WCE
- #if _WIN32_WCE < 300
- #define Int32x32To64(a, b) ((LONGLONG)((LONG)(a)) * (LONGLONG)((LONG)(b)))
-/* #define Int32x32To64(a, b) ((__int64)((LONG)(a)) * (__int64)((LONG)(b))) */
- #endif
-#endif
-
-int utime(const char *f, struct utimbuf *t)
-{
- HANDLE h;
- FILETIME atime={0}, mtime={0};
- __int64 time64;
- BOOL rc;
- wchar_t *w;
-
- w = wce_mbtowc(f);
- h = CreateFileW(w, GENERIC_WRITE,
- FILE_SHARE_READ|FILE_SHARE_WRITE,
- NULL, OPEN_EXISTING, 0, 0);
- free(w);
-
- if( h==INVALID_HANDLE_VALUE )
- return -1;
-
- time64 = Int32x32To64(t->actime, 10000000) + 116444736000000000;
- atime.dwLowDateTime = (DWORD)time64;
- atime.dwHighDateTime = (DWORD)(time64 >> 32);
- time64 = Int32x32To64(t->modtime, 10000000) + 116444736000000000;
- mtime.dwLowDateTime = (DWORD)time64;
- mtime.dwHighDateTime = (DWORD)(time64 >> 32);
-
- rc = SetFileTime(h, NULL, &atime, &mtime);
- return rc==TRUE ? 0 : -1;
-}
-