emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r112687: * src/keyboard.c (read_decod


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r112687: * src/keyboard.c (read_decoded_char): Don't decode under w32.
Date: Thu, 23 May 2013 09:23:45 -0400
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 112687
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14403
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Thu 2013-05-23 09:23:45 -0400
message:
  * src/keyboard.c (read_decoded_char): Don't decode under w32.
modified:
  src/ChangeLog
  src/keyboard.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-05-22 21:35:00 +0000
+++ b/src/ChangeLog     2013-05-23 13:23:45 +0000
@@ -1,3 +1,7 @@
+2013-05-23  Stefan Monnier  <address@hidden>
+
+       * keyboard.c (read_decoded_char): Don't decode under w32 (bug#14403).
+
 2013-05-22  Barry OReilly  <address@hidden>  (tiny change)
 
        * casetab.c (init_casetab_once): Fix last change (bug#14424).

=== modified file 'src/keyboard.c'
--- a/src/keyboard.c    2013-04-14 20:33:57 +0000
+++ b/src/keyboard.c    2013-05-23 13:23:45 +0000
@@ -6827,6 +6827,8 @@
   /* XXX I think the following code should be moved to separate hook
      functions in system-dependent files.  */
 #ifdef WINDOWSNT
+  /* FIXME: AFAIK, tty_read_avail_input is not used under w32 since the non-GUI
+     code sets read_socket_hook to w32_console_read_socket instead!  */
   return 0;
 #else /* not WINDOWSNT */
   if (! tty->term_initted)      /* In case we get called during bootstrap.  */
@@ -8700,6 +8702,10 @@
     {
       Lisp_Object nextevt
        = read_char (commandflag, map, prev_event, used_mouse_menu, NULL);
+#ifdef WINDOWSNT
+      /* w32_console already returns decoded events.  */
+      return nextevt;
+#else
       struct frame *frame = XFRAME (selected_frame);
       struct terminal *terminal = frame->terminal;
       if (!((FRAME_TERMCAP_P (frame) || FRAME_MSDOS_P (frame))
@@ -8750,6 +8756,7 @@
              = Fcons (events[--n], Vunread_command_events);
          return events[0];
        }
+#endif
     }
 }
 


reply via email to

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