Subject: bug#22107: 25.1; Wrong docstring for this-single-command-keys

From: Eli Zaretskii <[email-masked]>
Date: Tue, 08 Dec 2015 18:59:41 +0200

> Date: Tue, 8 Dec 2015 12:01:29 +0000
> From: Artur Malabarba <[email-masked]>
> Cc: [email-masked]
> 
> 2015-12-08 1:20 GMT+00:00 Glenn Morris <[email-masked]>:
> >
> > Without any testing, going to guess this was caused by 5dc644a6b01e.
> 
> Yes, I've just compiled and verified the commit "Generalize the
> prefix-command machinery of C-u" is the cause.
> Stefan, do you know what the problem might be?

I'm not Stefan, so I cannot say that I understand what I'm doing, but
the simple patch below seems to restore the old behavior.  Stefan, any
objections or gotchas?

diff --git a/src/keyboard.c b/src/keyboard.c
index 02bc7d2..e378b89 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1486,8 +1486,11 @@ command_loop_1 (void)
       if (!CONSP (last_command_event))
 	kset_last_repeatable_command (current_kboard, Vreal_this_command);
 
-      this_command_key_count = 0;
-      this_single_command_key_start = 0;
+      if (NILP (KVAR (current_kboard, Vprefix_arg)))
+	{
+	  this_command_key_count = 0;
+	  this_single_command_key_start = 0;
+	}
 
       if (current_kboard->immediate_echo
 	  && !NILP (call0 (Qinternal_echo_keystrokes_prefix)))