Blame SPECS/ksh-20120801-tabfix.patch

Packit 992a25
diff -up ksh-20120801/src/cmd/ksh93/edit/emacs.c.tabfix ksh-20120801/src/cmd/ksh93/edit/emacs.c
Packit 992a25
--- ksh-20120801/src/cmd/ksh93/edit/emacs.c.tabfix	2012-07-17 22:44:44.000000000 +0200
Packit 992a25
+++ ksh-20120801/src/cmd/ksh93/edit/emacs.c	2013-03-07 15:58:59.902161711 +0100
Packit 992a25
@@ -1011,10 +1011,13 @@ static int escape(register Emacs_t* ep,r
Packit 992a25
 					ep->ed->e_tabcount=0;
Packit 992a25
 				else
Packit 992a25
 				{
Packit 992a25
+					int oldi = i;
Packit 992a25
 					i=ed_getchar(ep->ed,0);
Packit 992a25
 					ed_ungetchar(ep->ed,i);
Packit 992a25
-					if(isdigit(i))
Packit 992a25
+					if(isdigit(i) && oldi=='=')
Packit 992a25
 						ed_ungetchar(ep->ed,ESC);
Packit 992a25
+					else if (isdigit(i) || i=='\t')
Packit 992a25
+						ep->ed->e_tabcount=0;
Packit 992a25
 				}
Packit 992a25
 			}
Packit 992a25
 			else