From: Mika Pekka Liljeberg (liljeber@kruuna.Helsinki.FI)
Date: 06/28/92


From: liljeber@kruuna.Helsinki.FI (Mika Pekka Liljeberg)
Subject: console.c patch (Was: Re: Problem with 0.96b kernel)
Date: 28 Jun 1992 14:08:28 GMT

In article <LILJEBER.92Jun27213428@kruuna.Helsinki.FI> I wrote:

> Uhuh. I think I've figured it out. Vi and elvis obviously send the vt100
> reset terminal sequence (ESC c) upon exit. Vt100 documentation states that
> ESC c resets the terminal to the state it was in just after power-on. The
> current console implementation therefore resets everything, even the
> defaults. Clearly it would be better, if the defaults were preserved.
> I'll make a patch available, when I get around to it. :-) Upon reflection
> I'll also change the -store sequence so that it'll save the blink and
> intensity bits, too. It shouldn't cause too much of a havoc with attribute
> handling.

Ok, here it is. I also fixed a few other bugs (including the crash
bug with the restore cursor position (ESC 8) sequence). The patch
is compressed and uuencoded. Linus' patches 1 and 2 didn't touch
console.c, so there shouldn't be any problems.

Hope I nailed'em this time...

        Mika
=========================================================================
begin 644 console.c.diff.Z
M'YV0*@*"&//&S9PW;,JX&.,"(9D$4\+0 :&DCAL0,FY@G*$#Q@T=,G* B)$C
MAPP%+5(.+'@PX4*(%BG&E(%C9(V.-VG4&%GR9,"?0(.J4/ 3A$D6.6H"50 "
MQ!PZ$M., 9'&S<0Q8=Q\(?/F"T$V;^2 Z $"Q@ZF(- ^C3KUJ9PZ8R;N41 "
M1 *+<]*<<5.&C%,T8>DDL#/FBYTT9,IT+2,GS)PR7M&$D;,CP0L5((;4D2.G
MC%40$NG(22.F#ITR<T"8< HGS)@R(%2\0'O7H%Z^?L=(EC.X<&(S7A&&K6P9
M,Y$R9L+487-5N)S4LFGCO=UWX.[>P<%23E <A)&P9<[(>6/1[VHQKM>()^_&
M;_2FM?/NK:Y[,O8YV8=SOPPBHIWJ9H"W7GFJ@8#>&.J-1V!T*;5@E Q(B=1@
M"VI!18=45'V&E59<Y2<666:A52%;3HD&EUQTV37=?'[- 9@<@A%F&&**?<&8
M8Y#5MQU_0J0W8'L@W/B8=9.Y=II8T=45'W6Y72=C:-MUIQEGGDT$)6FFH1;;
M;/"MB!N1O,GXFX?$\7=<<LLUIQUT7*IH&XM@8O>5?MU]U]F/YAGHHX) ON>F
M?%_J>!^9^V'F'X "\IGG@0FRY]YL0D4:$%$"Q6 ##"Q8:D-L/Z$UPF]5P>9&
M:[PE@(*,!!FTQ1B;R9'J'%VX(..HDZ7@*:A\@4 J=Z<6]NJJK;X:JXRDVMK4
MI\B%"D(<=:#&*ZHL <N9L+(6QBQJMM:%K!G*0OFLK]&R.BU+PQ9V6&*+-?98
M9).!X(,/(.!@+ C;*CM'&/^1\04>WP:GJKBNDEOM%_?FN^^\]>9:<%]?Y-'O
MKP!3*^/"^N:!,*ZPB9;5'&Q(5(:IT/X;K, R:FQ0QZ?9VN!(-L20J0T:37AK
MLKG26FJO_LXA;< &E?N%S1?3#-NN((,K\K@]#USLS-SF>NT<#X<[<M(R/ITM
MO1B#1H=H41_-,ZP#0QETT[!1O&_7.D=,<F%FXS&VO?@R['#1.>\L,=MQ5_QV
MKB9S[#'=$$\-=LF-G>RQK9)&2BEF,L#@<N,:+75LUFN(048;;R2&MMUK?U'Y
MY9F7L7?&88A!,!UOP &XU$@/7AA4IC^5^N@@?-[8'<_24;?:5!=F>QAWJ(RU
MT+5;7@8,N>\NN,^?'T_[YPF1 37(N@?>.O.61S\'[7;0@;GFU"M_O:RZ?R^Z
MB"LW#B'D(,B<N%"+8X0##BR$- .GDZ8_?_TYT-!^@[1)0!G8\)@ )B /8P$!
M7^[0L+/ !PYO2 U9PJ*7JH!@!2#(@PK.5:.\Z $RX[G#!4& CSP@ <Q2,%9
M,)@ OC#L#HV!0P)#U)0^B*@I:[G05.SP!L0XI0RZH^ 9JH*"JEQ%<(A[WU**
M,@,<U( %,\@!#/ WE)4UT090-,G_4A+ SM!A,VYPH%WZ$"0"PB: <QC#6^"
M M[-@06H@P,+Q/"&K;VA#2I4 M=J"\8AD&&(!*C#9LR(AV"@(<^'$T1-83$
MQ2EQ*$S,P1-I$ /_2<XN"? B&,68 #(.L(#P24 :Y<"5.[BAC8*#8^KF6$?4
MX5&0-RP1B:K"!F4A,C=R6.016S>ON3PP@NTCBPE1>!8EX:$'- 3!(--2EQQB
MZ)8@2 P;=#F01C;%EW9)@QE(Z#808),[$$Q-"\@B TXF \I,:<*4."EZK@H
M,+%)03@3R,%TX8A=E*'-,I>)$I5$\08LH$%&MDBA4&I2#F'49QE!B<E1EO*4
M;E2E'.EHQU?JT2Y\_((? 5D66!(2AQ;"$"UMV4-<4M.-O:3-/,<)@F'&H)@8
M+<,+8YA /,S0H\R4I2%'FBMHBF$.)[6F-VFC36ZF8*BA7"DYS8G.%JP0DQG=
MZ$TOVLF+VA"#%W7F5'@*&VA*,ZB\O.A<6%C4$AYUK)A4*D:>RIVFJI.=;_K2
M.V$4SWF2I9XV4E>.=L/6%LJTCS0-I#[1PL]'=JHH-(AB0&E@R4ZM3"<0TDE-
M9!9*'>A !&,0 0D)8A$ZI( % 10!$32+@K7 Z+,B" -I\2JDO=8J@)<= QY$
MP (1D"$-(LCC'O^JT<!VE+"QU.HA2SJ0O'QA"6#]&@LR-!$[+,VPDT*L#>A'
M@QO<;RF/Q4%DYT=0V,:6M)RURF=#.UH2FM:SM54M"5FK5WS.BSNQG6UM;YM;
MMD;5M\GD9U,NXT@EQJ^Z3ZP!#*[;J:9LJ9#/)&X=X$ &CWT!2LE]54J5U,XF
MM2L,"9Q3/NM"U&VV,2M;Z8J&SQK LI:',;7DR]6XDP ,DP4%&%X-#/!@!GF!
M@ \@6(Z&S?E)V)35B)[)"QT0V ,0K9@[+B9AC,M"8Q@<%<>288,9=CQ8^)2U
M,_]Y#FR\$,TRC"&-;L!CBI"<0!@7:,;S>S()46#F=X& !FHV\PG?G(*CRA@/
M-[A!'JWL83&D> U'QC ?0(0''"0S 3^V2I#3,.2QD#/0-R8T#'# R;*&8$,A
M]A")0VGB]J X5$=N<9F7/.,:JWG&CN.Q&:GB82#;IM%%+DNHDVSF.YO!R3=F
M\J0Y:4,EL?>>.AHU".9L8QR? 0GP"F"=TC<+Z?A"VV(,$M2:N7/I.$LCY4B
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
M]K=X -F<+F804=LX!=W@ :,!AN@FP 6-[J21FG=T6!RP'N=^[FS$;>CJZ>3
M2Z86\C%ZNK,]*P<_RP:<]#1_J[&%XS>GH:=.\ 12T 1X*P5!X 13@*CQHA.,
MRFW=Q;4'.P,TP*@1BWTFB[+22[W62P78J[V<%+(Z8K%D<038:P37F[W;2QOS
M"T3-VZL) #U],3U+!<"?8S[_&[>_@SMZ&B(*;#S(T\"<]**J,[.T,7<CUP8)
MK!).E+!.-%D )+X" ;%/Y$25ZJ57Z&7 H\%Z&G;P$7)CP,)DX<)V$7)I(,._
MI2134 14@ (A-QEMP )KT!EP<)1TD"EYI,,\[,->AB!![,2APP).EH [W,.?
M\T=P4$M$NP98K,52G,1V4<4HP 9AQ@)2Y@9L8#Y?#%-QAZMLBH!CAJP2/&;+
MFH'/.L==LK+EYIJ\)$:T 3NGDSI; -=T,"E&P..D\@.S,&7PJ@0VY@_? <X
M3,,I/ 8Q#*B4;,,X'"(<IB1EY49G9P9GD#,((3J@BDE#7 9%+!&87)I0##X9
M&,!=+!7_VV]GG,9T&\MKH#V ZH+]M@8(/,?])I/:@P)@W$D+!1OABDD_C+RM
M_' P#,RUC,J6,\MC(,R81,:;7)H"+#V]S,V6$\P9V&LYE<*=B9HMJYIY3&Z0
MP<=?@W-_7#J!# >#7,B2ALCX# ,A(L*8@0/AR*@ABGUR)V)N2Z7VQAU26Z[G
M&E&8,L63:5Q*X+(&43^E:$,. L +TZE;^)K -:/(QXTP]+JE92)Q 0);DP>G
M\Q8EC1DG_8V)JFTXD ,UR$5\1D)M>Y0&_4T)D-#F*M%OU-"EZ'L0[=,4W5<9
M+2X^7=$=?8X?K14A?1HCK=(3<=(I?2*!V=(%&Q1=Z\^,JD781X >1L%'B(0;
MW<<I*&5)K;@L1L%(ZI@&)'=>=L/F1X &P1C5LQMIS:$Y@,A(87WA"ZD'RZ5(
M@8Q?[7OG^;P<NRI=0(+K5(A'95<#P=AME(M'1801](='-9KG5IH;QTUG1[B&
M^Q4W:Q#M,Q)C;:2 !:-=AA62S-F^5Q 74K@$.Y06/8!XP)X #$Z7[8@DF"JQ
MW2SF5-O<P=86'$K\%4J!F1FP/1[YIR-&XG$#D14& AMU\!A^84%T@ :P 6V(
M008)\05Z;2E(T6WD&7^'O3&)/0:+;4"-3=FZ DQ:*=F.O7Z7G4()1)I85U8V
M%6N@W0;9,=KB9-HI2-RKO<*<C7#+K("W7:)8-Z*[[8*T'8:P717 '4#ZA4G'
MC4G)/03+C1!@\MS/$=T7(0;4;=T98M+:#0+<30;>#1E9O40"L=<08A+*6-BB
ME =S0.*J;,Q=&)N];8)+V>#Z36)6>$[IU. .+DX%;(6/"9E=&89?B8)#F>3!
MY-ES9JMZ3;Y(00..:H,4. <XKN-L%-1.?I2R.8"4V> _E==3[N-0/B1@F8)J
M54*0A^7\/!)LZ#(QP(:;@ETJL>>*N>=L***0S:IWI:+05@;^?5X)A!Z/84X>
MZ1>'CBZ)[M^\6&:.#AN-Z!1J)%-: :M!/3%J5!IFP#D],Y&WV"(O,A&&*(6O
M6!5]U3WB# )VB[=ZR[=4%<"6<SO_RT+F["&&[!&+N%^8T;JO>V"^7G#:0;JF
M.^P@P!^JR[JN>QK(CDFSZQS!3FD&QA_BD;6_"8&H 41?<+9I.TTVJ<YCQ+^"
MDT"B3,H),55WON<>D2DR&)1#,:.#@>AMH.BG,QD3,>DULN_^G>F<A%<"WX_T
MI._\?K8).(]Z:O#\?EYDRH^\^/ *O^A005<8U-^'JR68\:II\$%?$$*<Q-,+
MG4I"M"\LD/(6H[+L3#"=[ADHT.ZO4LKPO#*"KN?DV^4T?8[Y3ND'S^@ WQ4'
M3_"T ?&6#B1#7^GCSAAMT/"O?A%+'_09G[*T$>D6#_017_4CQ/'[!ATI2NFP
M.O( RE8F3]1 S59'[:GHOM/DVM,1E?)XL/*OV#"ER)KE-DJ>/O.C7/,) <_Q
M/@,R\$0Y'[;9Q$BMP^Y]SQ*ES$D''#H)!,RAX_B[#CR1?SN*VSQ31!9K<#R4
MW^+2$_G:\_G6'/G6S$G1C+-:*?F)P;U[7@,Z7P.;\JA66A2"7KY[SN6&[WOK
M3A8+Y.ZS;1>L#QLO-OQ]-P-&$&>/GQA]-P0.#1]#;/F<7_EWD/G'$_D0[/C:
F@_V@G[BTP<5PD,48,OT-%OY:S$FO3/RK[<2N/P,UD /T;@/C"4#'
 
end