emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-25 6f5f62b: Fix compiler warnings in w32.c


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-25 6f5f62b: Fix compiler warnings in w32.c
Date: Thu, 26 Nov 2015 17:54:54 +0000

branch: emacs-25
commit 6f5f62b3c79485245b1f6d3d9a33d72da92c9e1d
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Fix compiler warnings in w32.c
    
    * src/w32.c (sys_socket): In case of error, use -1 as return
    value, not INVALID_SOCKET, which causes compiler warnings.
    (maybe_load_unicows_dll): Cast the return value of GetProcAddress
    to the appropriate function signature, to avoid compiler errors.
    Reported by Andy Moreton <address@hidden>.  (Bug#21953)
---
 src/w32.c |    8 +++++---
 src/w32.h |    6 ++++--
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/w32.c b/src/w32.c
index 9601012..9b1d94d 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -7432,7 +7432,7 @@ sys_socket (int af, int type, int protocol)
   if (winsock_lib == NULL)
     {
       errno = ENETDOWN;
-      return INVALID_SOCKET;
+      return -1;
     }
 
   check_errno ();
@@ -9270,8 +9270,10 @@ maybe_load_unicows_dll (void)
             pointers, and assign the correct addresses to these
             pointers at program startup (see emacs.c, which calls
             this function early on).  */
-         pMultiByteToWideChar = GetProcAddress (ret, "MultiByteToWideChar");
-         pWideCharToMultiByte = GetProcAddress (ret, "WideCharToMultiByte");
+         pMultiByteToWideChar =
+           (MultiByteToWideChar_Proc)GetProcAddress (ret, 
"MultiByteToWideChar");
+         pWideCharToMultiByte =
+           (WideCharToMultiByte_Proc)GetProcAddress (ret, 
"WideCharToMultiByte");
          return ret;
        }
       else
diff --git a/src/w32.h b/src/w32.h
index 2c71150..1efd562 100644
--- a/src/w32.h
+++ b/src/w32.h
@@ -179,8 +179,10 @@ extern int _sys_wait_connect (int fd);
 
 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);
+typedef int (WINAPI 
*MultiByteToWideChar_Proc)(UINT,DWORD,LPCSTR,int,LPWSTR,int);
+typedef int (WINAPI 
*WideCharToMultiByte_Proc)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL);
+extern MultiByteToWideChar_Proc pMultiByteToWideChar;
+extern WideCharToMultiByte_Proc pWideCharToMultiByte;
 
 extern void init_environment (char **);
 extern void check_windows_init_file (void);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]