X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fwin32.lisp;h=c970412c17e185b49600fbfcec44c6d6553ef824;hb=eaec8176060e89efa39f01017df1f6204e491ecc;hp=37696c3b9b873ff8bfc41ad1661edf2bdf22f8b2;hpb=0d67e11363ce91e7f3d4d196d447add7acb67289;p=sbcl.git diff --git a/src/code/win32.lisp b/src/code/win32.lisp index 37696c3..c970412 100644 --- a/src/code/win32.lisp +++ b/src/code/win32.lisp @@ -432,14 +432,16 @@ err-code (get-last-error-message err-code)))) -(defun get-folder-pathname (csidl) +(defun get-folder-namestring (csidl) "http://msdn.microsoft.com/library/en-us/shellcc/platform/shell/reference/functions/shgetfolderpath.asp" (with-alien ((apath (* char) (make-system-buffer (1+ max_path)))) (syscall (("SHGetFolderPath" 20 t) int handle int handle dword (* char)) - (parse-native-namestring - (concatenate 'string (cast-and-free apath) "\\")) + (concatenate 'string (cast-and-free apath) "\\") 0 csidl 0 0 apath))) +(defun get-folder-pathname (csidl) + (parse-native-namestring (get-folder-namestring csidl))) + (defun sb!unix:posix-getcwd () (with-alien ((apath (* char) (make-system-buffer (1+ max_path)))) (with-sysfun (afunc ("GetCurrentDirectory" 8 t) dword dword (* char))