changeset 2998:9e62095edc58

patch for readline slow pasting problem
author John W. Eaton <jwe@octave.org>
date Tue, 28 May 2013 17:42:05 -0400
parents 4f9b72cf7ee7
children c1b84cca13bd
files src/readline-1-paste.patch
diffstat 1 files changed, 30 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/readline-1-paste.patch	Tue May 28 17:42:05 2013 -0400
@@ -0,0 +1,30 @@
+diff -u a/input.c b/readline-6.2/input.c
+--- a/input.c	2010-05-30 18:33:01.000000000 -0400
++++ b/input.c	2012-06-25 21:08:42.000000000 -0400
+@@ -410,5 +412,5 @@
+ rl_read_key ()
+ {
+-  int c;
++  int c, r;
+ 
+   rl_key_sequence_length++;
+@@ -430,12 +432,16 @@
+ 	  while (rl_event_hook)
+ 	    {
+-	      if (rl_gather_tyi () < 0)	/* XXX - EIO */
++	      if (rl_get_char (&c) != 0)
++		break;
++		
++	      if ((r = rl_gather_tyi ()) < 0)	/* XXX - EIO */
+ 		{
+ 		  rl_done = 1;
+ 		  return ('\n');
+ 		}
++	      else if (r == 1)			/* read something */
++		continue;
++
+ 	      RL_CHECK_SIGNALS ();
+-	      if (rl_get_char (&c) != 0)
+-		break;
+ 	      if (rl_done)		/* XXX - experimental */
+ 		return ('\n');