diff options
author | Eli Zaretskii <eliz@gnu.org> | 2014-02-06 17:27:46 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2014-02-06 17:27:46 +0200 |
commit | 829f4f2256d11c0336618269b45b2eea299ed2ce (patch) | |
tree | 74fbee3b06e4efad9bd218713188d73a86fa447d /src/w32.h | |
parent | 629de968455d2b4632fbe9db860ae4ac7e933b9b (diff) | |
download | emacs-829f4f2256d11c0336618269b45b2eea299ed2ce.tar.gz |
Another fix for handling of file names on Windows 9X.
src/w32.c (pMultiByteToWideChar, pWideCharToMultiByte): New
variables: pointers through which to call the respective APIs.
(filename_to_utf16, filename_from_utf16, filename_to_ansi)
(filename_from_ansi, sys_link, check_windows_init_file): Call
MultiByteToWideChar and WideCharToMultiByte through pointers.
This is required on Windows 9X, where we dynamically load
UNICOWS.DLL which has their non-stub implementations.
(maybe_load_unicows_dll): Assign addresses to these 2 function
pointers after loading UNICOWS.DLL.
src/w32fns.c (Fx_file_dialog, Fw32_shell_execute) [!CYGWIN]: Call
MultiByteToWideChar and WideCharToMultiByte through function
pointers.
src/w32.h (pMultiByteToWideChar, pWideCharToMultiByte): New
declarations.
Diffstat (limited to 'src/w32.h')
-rw-r--r-- | src/w32.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/w32.h b/src/w32.h index 0ca30c60125..33fd2709a71 100644 --- a/src/w32.h +++ b/src/w32.h @@ -175,6 +175,9 @@ extern int _sys_wait_accept (int fd); extern Lisp_Object QCloaded_from; extern HMODULE w32_delayed_load (Lisp_Object); +extern int (WINAPI *pMultiByteToWideChar)(UINT,DWORD,LPCSTR,int,LPWSTR,int); +extern int (WINAPI *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL); + extern void init_environment (char **); extern void check_windows_init_file (void); extern void syms_of_ntproc (void); |