X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fwin32.lisp;h=e4152a8ce5a1b5885f8e47c411ea25b3cac73d16;hb=568daf6b160280428701670b921f419aabd9eba0;hp=8b055ea4ab6caa62d45497102067269e244028d7;hpb=c2c405712ae18e70a96c4a8cf584dde329f3d5f7;p=sbcl.git diff --git a/src/code/win32.lisp b/src/code/win32.lisp index 8b055ea..e4152a8 100644 --- a/src/code/win32.lisp +++ b/src/code/win32.lisp @@ -460,17 +460,17 @@ (declare (type simple-string name)) (let ((name-length (length name))) (with-alien ((aname (* tchar) (make-alien tchar (1+ name-length))) - (aenv (* tchar) (make-alien tchar default-environment-length)) - (afunc (function dword (* tchar) (* tchar) dword) - :extern #!-sb-unicode "GetEnvironmentVariableA@12" - #!+sb-unicode "GetEnvironmentVariableW@12")) - (dotimes (i name-length) (setf (deref aname i) (char-code (aref name i)))) - (setf (deref aname name-length) 0) - (let ((ret (alien-funcall afunc aname aenv default-environment-length))) - (when (> ret default-environment-length) - (free-alien aenv) - (setf aenv (make-alien tchar ret)) - (alien-funcall afunc aname aenv ret)) - (if (> ret 0) - (ucs2->string&free aenv ret) - nil))))) + (aenv (* tchar) (make-alien tchar default-environment-length)) + (afunc (function dword (* tchar) (* tchar) dword) + :extern #!-sb-unicode "GetEnvironmentVariableA@12" + #!+sb-unicode "GetEnvironmentVariableW@12")) + (dotimes (i name-length) (setf (deref aname i) (char-code (aref name i)))) + (setf (deref aname name-length) 0) + (let ((ret (alien-funcall afunc aname aenv default-environment-length))) + (when (> ret default-environment-length) + (free-alien aenv) + (setf aenv (make-alien tchar ret)) + (alien-funcall afunc aname aenv ret)) + (if (> ret 0) + (ucs2->string&free aenv ret) + nil)))))