[Openmcl-cvs-notifications] r10873 - /trunk/source/level-0/l0-cfm-support.lisp

gb at clozure.com gb at clozure.com
Thu Sep 25 09:21:02 EDT 2008


Author: gb
Date: Thu Sep 25 09:21:02 2008
New Revision: 10873

Log:
Define *WINDOWS-INVALID-HANDLE*, which is EQL to what Windows returns if
it can't create a HANDLE.  (Except when it returns some sort of integer ...=
).
Revive *WINDOWS-INVALID-HANDLE* on startup.

Modified:
    trunk/source/level-0/l0-cfm-support.lisp

Modified: trunk/source/level-0/l0-cfm-support.lisp
=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/level-0/l0-cfm-support.lisp (original)
+++ trunk/source/level-0/l0-cfm-support.lisp Thu Sep 25 09:21:02 2008
@@ -19,6 +19,10 @@
 =

 (in-package "CCL")
 =

+#+windows-target
+(progn
+  (defvar *windows-invalid-handle* nil)
+  (setq *windows-invalid-handle* (%int-to-ptr #+64-bit-target #xffffffffff=
ffffff #+32-bit-target #xffffffff)))
 =

 =

 ;;; We have several different conventions for representing an
@@ -470,6 +474,7 @@
 =

 =

   (defun init-windows-ffi ()
+    (%revive-macptr *windows-invalid-handle*)
     (setq *current-process-handle* (ff-call (foreign-symbol-entry "GetCurr=
entProcess") :address)) =

     (setq *enum-process-modules-addr* (foreign-symbol-entry "EnumProcessMo=
dules"))   =

     (setq *get-module-file-name-addr* (foreign-symbol-entry "GetModuleFile=
NameA"))



More information about the Openmcl-cvs-notifications mailing list