فهرست منبع

Create a function for DEC test

Almost of the sequences execute their action in a separate function,
which is good because helps to read the full set of sequences
faster.
Roberto E. Vargas Caballero 11 سال پیش
والد
کامیت
43d74ef362
1فایلهای تغییر یافته به همراه15 افزوده شده و 9 حذف شده
  1. 15 9
      st.c

+ 15 - 9
st.c

@@ -394,6 +394,7 @@ static void tsetmode(bool, bool, int *, int);
 static void tfulldirt(void);
 static void techo(char *, int);
 static bool tcontrolcode(uchar );
+static void tdectest(char );
 static int32_t tdefcolor(int *, int *, int);
 static void tselcs(void);
 static void tdeftran(char);
@@ -2425,6 +2426,19 @@ tcontrolcode(uchar ascii) {
 	return 1;
 }
 
+void
+tdectest(char c) {
+	static char E[UTF_SIZ] = "E";
+	int x, y;
+
+	if(c == '8') { /* DEC screen alignment test. */
+		for(x = 0; x < term.col; ++x) {
+			for(y = 0; y < term.row; ++y)
+				tsetchar(E, &term.c.attr, x, y);
+		}
+	}
+}
+
 void
 tputc(char *c, int len) {
 	uchar ascii;
@@ -2504,15 +2518,7 @@ tputc(char *c, int len) {
 			tdeftran(ascii);
 			tselcs();
 		} else if(term.esc & ESC_TEST) {
-			if(ascii == '8') { /* DEC screen alignment test. */
-				char E[UTF_SIZ] = "E";
-				int x, y;
-
-				for(x = 0; x < term.col; ++x) {
-					for(y = 0; y < term.row; ++y)
-						tsetchar(E, &term.c.attr, x, y);
-				}
-			}
+			tdectest(ascii);
 		} else {
 			switch(ascii) {
 			case '[':