[Openmcl-cvs-notifications] r11311 - /trunk/source/lisp-kernel/windows-calls.c
gb at clozure.com
gb at clozure.com
Fri Nov 7 20:52:16 EST 2008
Author: gb
Date: Fri Nov 7 20:52:16 2008
New Revision: 11311
Log:
in lisp_open(): always enable FILE_SHARE_READ|FILE_SHARE_WRITE.
lisp_gettimeofday(): coerce from windows time ourselves.
asinh(), asinhf(): don't negate 0.0 result.
Modified:
trunk/source/lisp-kernel/windows-calls.c
Modified: trunk/source/lisp-kernel/windows-calls.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/windows-calls.c (original)
+++ trunk/source/lisp-kernel/windows-calls.c Fri Nov 7 20:52:16 2008
@@ -187,13 +187,7 @@
DWORD dwFlagsAndAttributes =3D 0;
SECURITY_ATTRIBUTES sa =3D {sizeof(SECURITY_ATTRIBUTES), NULL, TRUE};
=
- if ((flag & S_IREAD) =3D=3D S_IREAD) {
- dwShareMode =3D FILE_SHARE_READ;
- } else {
- if ((flag & S_IWRITE) =3D=3D S_IWRITE) {
- dwShareMode =3D FILE_SHARE_READ | FILE_SHARE_WRITE;
- }
- }
+ dwShareMode =3D FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE;
=
if ((flag & _O_WRONLY) =3D=3D _O_WRONLY) {
dwDesiredAccess |=3D GENERIC_WRITE | FILE_WRITE_DATA |
@@ -206,12 +200,6 @@
FILE_WRITE_ATTRIBUTES;
}
=
- if ((flag & S_IREAD) =3D=3D S_IREAD) {
- dwShareMode |=3D FILE_SHARE_READ;
- }
- if ((flag & S_IWRITE) =3D=3D S_IWRITE) {
- dwShareMode |=3D FILE_SHARE_WRITE;
- }
=
if ((flag & (_O_CREAT | _O_EXCL)) =3D=3D (_O_CREAT | _O_EXCL)) {
dwCreationDistribution |=3D CREATE_NEW;
@@ -572,7 +560,15 @@
int
lisp_gettimeofday(struct timeval *tp, void *tzp)
{
- return gettimeofday(tp, tzp);
+ __time64_t now;
+
+ gettimeofday(tp,tzp); /* trust it to get time zone right, at least=
*/
+ GetSystemTimeAsFileTime((FILETIME*)&now);
+ now -=3D UNIX_EPOCH_IN_WINDOWS_EPOCH;
+ now /=3D 10000;
+ tp->tv_sec =3D now/1000LL;
+ tp->tv_usec =3D now%1000LL;
+ return 0;
}
=
#ifdef WIN_64
@@ -646,7 +642,7 @@
=
z =3D log1p (z + z * z / (sqrt (z * z + 1.0) + 1.0));
=
- return ( x > 0.0 ? z : -z);
+ return ( x >=3D 0.0 ? z : -z);
}
=
float
@@ -671,7 +667,7 @@
=
z =3D log1p (z + z * z / (sqrt (z * z + 1.0) + 1.0));
=
- return ( x > 0.0 ? z : -z);
+ return ( x >=3D 0.0 ? z : -z);
}
=
double
More information about the Openmcl-cvs-notifications
mailing list