Mercurial > hg > xemacs-beta
diff src/syswindows.h @ 673:685b588e92d8
[xemacs-hg @ 2001-10-30 05:13:26 by andyp]
merge of windows 21.4.5 codeline
author | andyp |
---|---|
date | Tue, 30 Oct 2001 05:13:31 +0000 |
parents | fdefd0186b75 |
children | 943eaba38521 |
line wrap: on
line diff
--- a/src/syswindows.h Fri Oct 26 02:42:53 2001 +0000 +++ b/src/syswindows.h Tue Oct 30 05:13:31 2001 +0000 @@ -85,6 +85,7 @@ # define Status int # endif # include <mmsystem.h> +# include <shlobj.h> # include <shellapi.h> # include <ddeml.h> #endif @@ -122,6 +123,17 @@ #define PHYSICALOFFSETY 113 #endif +/* shlobj.h defines. */ +#ifndef BIF_EDITBOX +#define BIF_EDITBOX 0x10 +#endif +#ifndef BIF_VALIDATE +#define BIF_VALIDATE 0x20 +#endif +#ifndef BFFM_VALIDATEFAILED +#define BFFM_VALIDATEFAILED 3 +#endif + /* windows.h defines. */ #if defined (CYGWIN) && (CYGWIN_VERSION_DLL_MAJOR < 20) typedef NMHDR *LPNMHDR; @@ -261,12 +273,15 @@ is ASCII-compatible, and so these functions will work fine with \ this data. */ \ Lisp_Object ltwff1 = (path); \ - int ltwff2 = \ - cygwin_posix_to_win32_path_list_buf_size ((char *) \ - XSTRING_DATA (ltwff1)); \ - pathout = (Intbyte *) alloca (ltwff2); \ - cygwin_posix_to_win32_path_list ((char *) XSTRING_DATA (ltwff1), \ - (char *) pathout); \ + Intbyte* ltwffp = XSTRING_DATA (ltwff1); \ + if (isalpha (ltwffp[0]) && (IS_DEVICE_SEP (ltwffp[1]))) \ + pathout = ltwffp; \ + else { \ + int ltwff2 = \ + cygwin_posix_to_win32_path_list_buf_size ((char*)ltwffp); \ + pathout = (Intbyte *) alloca (ltwff2); \ + cygwin_posix_to_win32_path_list ((char*) ltwffp, (char*) pathout); \ + } \ } while (0) #else #define LOCAL_TO_WIN32_FILE_FORMAT(path, pathout) \