]> git.eshelyaron.com Git - emacs.git/commitdiff
Unbreak the Cygw32 build broken by resent WTS_SESSION changes
authorEli Zaretskii <eliz@gnu.org>
Tue, 19 Mar 2024 12:45:45 +0000 (14:45 +0200)
committerEshel Yaron <me@eshelyaron.com>
Sun, 24 Mar 2024 14:12:56 +0000 (15:12 +0100)
* src/w32xfns.c (WTS_VIRTUAL_CLASS):
* src/w32fns.c (WTS_VIRTUAL_CLASS, WM_WTSSESSION_CHANGE)
(WTS_SESSION_LOCK): Define only for WINDOWSNT.
* src/w32xfns.c (drain_message_queue): Call
'reset_w32_kbdhook_state' only for WINDOWSNT.  (Bug#69888)

(cherry picked from commit 88355de6022458c3e890cc6d5da60d6f35fe8868)

src/w32fns.c
src/w32xfns.c

index 7d288ce7bd5e49b00bde811f959f78978716328b..ace8d1016a58a145fb420147f2ad75247341672a 100644 (file)
@@ -305,10 +305,12 @@ static unsigned int sound_type = 0xFFFFFFFF;
 /* Special virtual key code for indicating "any" key.  */
 #define VK_ANY 0xFF
 
-#ifndef WM_WTSSESSION_CHANGE
+#ifdef WINDOWSNT
+# ifndef WM_WTSSESSION_CHANGE
 /* 32-bit MinGW does not define these constants.  */
-# define WM_WTSSESSION_CHANGE  0x02B1
-# define WTS_SESSION_LOCK      0x7
+#  define WM_WTSSESSION_CHANGE  0x02B1
+#  define WTS_SESSION_LOCK      0x7
+# endif
 #endif
 
 #ifndef WS_EX_NOACTIVATE
index 853c8368118a12082cd0b3664bcbbb6ec903f73b..b248697e65835156d78f9660e0a13f7489603f05 100644 (file)
@@ -22,9 +22,11 @@ along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.  */
 #include <stdio.h>
 #include <windows.h>
 #include <windowsx.h>
+
+#ifdef WINDOWSNT
 /* Override API version to get the required functionality.  */
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0501
+# undef _WIN32_WINNT
+# define _WIN32_WINNT 0x0501
 /* mingw.org's MinGW headers mistakenly omit this enumeration: */
 # ifndef MINGW_W64
 typedef enum _WTS_VIRTUAL_CLASS {
@@ -33,6 +35,7 @@ typedef enum _WTS_VIRTUAL_CLASS {
 } WTS_VIRTUAL_CLASS;
 # endif
 #include <wtsapi32.h>  /* for WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK */
+#endif /* WINDOWSNT */
 
 #include "lisp.h"
 #include "frame.h"
@@ -426,10 +429,12 @@ drain_message_queue (void)
     {
       switch (msg.message)
        {
+#ifdef WINDOWSNT
        case WM_WTSSESSION_CHANGE:
          if (msg.wParam == WTS_SESSION_LOCK)
            reset_w32_kbdhook_state ();
          break;
+#endif
        case WM_EMACS_FILENOTIFY:
          retval = 1;
          break;