emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/emacs-24 r110902: Fix bug #12878 with compi


From: Eli Zaretskii
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-24 r110902: Fix bug #12878 with compilation failure with Visual C++ 11.0.
Date: Sat, 17 Nov 2012 20:51:06 +0200
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110902
fixes bug: http://debbugs.gnu.org/12878
committer: Eli Zaretskii <address@hidden>
branch nick: emacs-24
timestamp: Sat 2012-11-17 20:51:06 +0200
message:
  Fix bug #12878 with compilation failure with Visual C++ 11.0.
  
   src/w32select.c: Include w32common.h before w32term.h, so that
   windows.h gets included before w32term.h uses some of its
   features, see below.
   src/w32term.h (LOCALE_ENUMPROCA, LOCALE_ENUMPROCW) [_MSC_VER]: New
   typedefs.
   (EnumSystemLocalesA, EnumSystemLocalesW) [_MSC_VER]: New
   prototypes.
   (EnumSystemLocales) [_MSC_VER]: Define if undefined.
modified:
  src/ChangeLog
  src/w32select.c
  src/w32term.h
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-11-17 15:28:56 +0000
+++ b/src/ChangeLog     2012-11-17 18:51:06 +0000
@@ -1,3 +1,15 @@
+2012-11-17  Eli Zaretskii  <address@hidden>
+
+       * w32select.c: Include w32common.h before w32term.h, so that
+       windows.h gets included before w32term.h uses some of its
+       features, see below.
+
+       * w32term.h (LOCALE_ENUMPROCA, LOCALE_ENUMPROCW) [_MSC_VER]: New
+       typedefs.
+       (EnumSystemLocalesA, EnumSystemLocalesW) [_MSC_VER]: New
+       prototypes.
+       (EnumSystemLocales) [_MSC_VER]: Define if undefined.  (Bug#12878)
+
 2012-11-17  Jan Djärv  <address@hidden>
 
        * nsterm.m (hold_event): Set send_appdefined to YES (Bug#12834).

=== modified file 'src/w32select.c'
--- a/src/w32select.c   2012-10-11 00:32:25 +0000
+++ b/src/w32select.c   2012-11-17 18:51:06 +0000
@@ -74,8 +74,8 @@
 
 #include <config.h>
 #include "lisp.h"
+#include "w32common.h" /* os_subtype */
 #include "w32term.h"   /* for all of the w32 includes */
-#include "w32common.h" /* os_subtype */
 #include "keyboard.h"
 #include "blockinput.h"
 #include "charset.h"

=== modified file 'src/w32term.h'
--- a/src/w32term.h     2012-10-17 19:02:44 +0000
+++ b/src/w32term.h     2012-11-17 18:51:06 +0000
@@ -752,6 +752,21 @@
 extern int w32_system_caret_x;
 extern int w32_system_caret_y;
 
+#ifdef _MSC_VER
+#ifndef EnumSystemLocales
+/* MSVC headers define these only for _WIN32_WINNT >= 0x0500.  */
+typedef BOOL (CALLBACK *LOCALE_ENUMPROCA)(LPSTR);
+typedef BOOL (CALLBACK *LOCALE_ENUMPROCW)(LPWSTR);
+BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA,DWORD);
+BOOL WINAPI EnumSystemLocalesW(LOCALE_ENUMPROCW,DWORD)
+#ifdef UNICODE
+#define EnumSystemLocales EnumSystemLocalesW
+#else
+#define EnumSystemLocales EnumSystemLocalesA
+#endif
+#endif
+#endif
+
 #if EMACSDEBUG
 extern const char*
 w32_name_of_message (UINT msg);


reply via email to

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