source: patches/readline-6.2-branch_update-3.patch@ cad2ff2

clfs-2.1
Last change on this file since cad2ff2 was 8c5edb4, checked in by William Harrington <kb0iic@…>, 12 years ago

Create readline 6.2 level 004 patch.

  • Property mode set to 100644
File size: 4.9 KB
RevLine 
[8c5edb4]1Submitted By: William Harrington (kb0iic at cross-lfs dot org)
2Date: 2012-11-01
3Initial Package Version: 6.2
4Origin: Upstream
5Upstream Status: Applied
6Description: Contains all upstream patches up to 6.2-004
7
8diff -Naur readline-6.2.orig/callback.c readline-6.2/callback.c
9--- readline-6.2.orig/callback.c 2010-06-06 16:18:58.000000000 +0000
10+++ readline-6.2/callback.c 2012-11-01 20:14:01.000000000 +0000
11@@ -148,6 +148,9 @@
12 eof = _rl_vi_domove_callback (_rl_vimvcxt);
13 /* Should handle everything, including cleanup, numeric arguments,
14 and turning off RL_STATE_VIMOTION */
15+ if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0)
16+ _rl_internal_char_cleanup ();
17+
18 return;
19 }
20 #endif
21diff -Naur readline-6.2.orig/input.c readline-6.2/input.c
22--- readline-6.2.orig/input.c 2010-05-30 22:33:01.000000000 +0000
23+++ readline-6.2/input.c 2012-11-01 20:14:01.000000000 +0000
24@@ -409,7 +409,7 @@
25 int
26 rl_read_key ()
27 {
28- int c;
29+ int c, r;
30
31 rl_key_sequence_length++;
32
33@@ -429,14 +429,18 @@
34 {
35 while (rl_event_hook)
36 {
37- if (rl_gather_tyi () < 0) /* XXX - EIO */
38+ if (rl_get_char (&c) != 0)
39+ break;
40+
41+ if ((r = rl_gather_tyi ()) < 0) /* XXX - EIO */
42 {
43 rl_done = 1;
44 return ('\n');
45 }
46+ else if (r == 1) /* read something */
47+ continue;
48+
49 RL_CHECK_SIGNALS ();
50- if (rl_get_char (&c) != 0)
51- break;
52 if (rl_done) /* XXX - experimental */
53 return ('\n');
54 (*rl_event_hook) ();
55diff -Naur readline-6.2.orig/patchlevel readline-6.2/patchlevel
56--- readline-6.2.orig/patchlevel 2010-01-14 15:15:52.000000000 +0000
57+++ readline-6.2/patchlevel 2012-11-01 20:14:01.000000000 +0000
58@@ -1,3 +1,3 @@
59 # Do not edit -- exists only for use by patch
60
61-1
62+4
63diff -Naur readline-6.2.orig/support/shobj-conf readline-6.2/support/shobj-conf
64--- readline-6.2.orig/support/shobj-conf 2009-10-28 13:20:21.000000000 +0000
65+++ readline-6.2/support/shobj-conf 2012-11-01 20:14:01.000000000 +0000
66@@ -157,7 +157,7 @@
67 ;;
68
69 # Darwin/MacOS X
70-darwin[89]*|darwin10*)
71+darwin[89]*|darwin1[012]*)
72 SHOBJ_STATUS=supported
73 SHLIB_STATUS=supported
74
75@@ -186,7 +186,7 @@
76 SHLIB_LIBSUFF='dylib'
77
78 case "${host_os}" in
79- darwin[789]*|darwin10*) SHOBJ_LDFLAGS=''
80+ darwin[789]*|darwin1[012]*) SHOBJ_LDFLAGS=''
81 SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
82 ;;
83 *) SHOBJ_LDFLAGS='-dynamic'
84diff -Naur readline-6.2.orig/vi_mode.c readline-6.2/vi_mode.c
85--- readline-6.2.orig/vi_mode.c 2010-11-21 00:51:39.000000000 +0000
86+++ readline-6.2/vi_mode.c 2012-11-01 20:14:01.000000000 +0000
87@@ -1114,7 +1114,7 @@
88 rl_beg_of_line (1, c);
89 _rl_vi_last_motion = c;
90 RL_UNSETSTATE (RL_STATE_VIMOTION);
91- return (0);
92+ return (vidomove_dispatch (m));
93 }
94 #if defined (READLINE_CALLBACKS)
95 /* XXX - these need to handle rl_universal_argument bindings */
96@@ -1234,11 +1234,19 @@
97 _rl_vimvcxt->motion = '$';
98 r = rl_domove_motion_callback (_rl_vimvcxt);
99 }
100- else if (vi_redoing)
101+ else if (vi_redoing && _rl_vi_last_motion != 'd') /* `dd' is special */
102 {
103 _rl_vimvcxt->motion = _rl_vi_last_motion;
104 r = rl_domove_motion_callback (_rl_vimvcxt);
105 }
106+ else if (vi_redoing) /* handle redoing `dd' here */
107+ {
108+ _rl_vimvcxt->motion = _rl_vi_last_motion;
109+ rl_mark = rl_end;
110+ rl_beg_of_line (1, key);
111+ RL_UNSETSTATE (RL_STATE_VIMOTION);
112+ r = vidomove_dispatch (_rl_vimvcxt);
113+ }
114 #if defined (READLINE_CALLBACKS)
115 else if (RL_ISSTATE (RL_STATE_CALLBACK))
116 {
117@@ -1316,11 +1324,19 @@
118 _rl_vimvcxt->motion = '$';
119 r = rl_domove_motion_callback (_rl_vimvcxt);
120 }
121- else if (vi_redoing)
122+ else if (vi_redoing && _rl_vi_last_motion != 'c') /* `cc' is special */
123 {
124 _rl_vimvcxt->motion = _rl_vi_last_motion;
125 r = rl_domove_motion_callback (_rl_vimvcxt);
126 }
127+ else if (vi_redoing) /* handle redoing `cc' here */
128+ {
129+ _rl_vimvcxt->motion = _rl_vi_last_motion;
130+ rl_mark = rl_end;
131+ rl_beg_of_line (1, key);
132+ RL_UNSETSTATE (RL_STATE_VIMOTION);
133+ r = vidomove_dispatch (_rl_vimvcxt);
134+ }
135 #if defined (READLINE_CALLBACKS)
136 else if (RL_ISSTATE (RL_STATE_CALLBACK))
137 {
138@@ -1377,6 +1393,19 @@
139 _rl_vimvcxt->motion = '$';
140 r = rl_domove_motion_callback (_rl_vimvcxt);
141 }
142+ else if (vi_redoing && _rl_vi_last_motion != 'y') /* `yy' is special */
143+ {
144+ _rl_vimvcxt->motion = _rl_vi_last_motion;
145+ r = rl_domove_motion_callback (_rl_vimvcxt);
146+ }
147+ else if (vi_redoing) /* handle redoing `yy' here */
148+ {
149+ _rl_vimvcxt->motion = _rl_vi_last_motion;
150+ rl_mark = rl_end;
151+ rl_beg_of_line (1, key);
152+ RL_UNSETSTATE (RL_STATE_VIMOTION);
153+ r = vidomove_dispatch (_rl_vimvcxt);
154+ }
155 #if defined (READLINE_CALLBACKS)
156 else if (RL_ISSTATE (RL_STATE_CALLBACK))
157 {
Note: See TracBrowser for help on using the repository browser.