mirror of
https://github.com/LukeSmithxyz/st.git
synced 2024-11-22 07:15:59 +01:00
Remove duplicated code in strhandle
The error condition was duplicated in two different switches. This new version centralized the error handling in only one place.
This commit is contained in:
parent
21d905c076
commit
a8d5870073
1 changed files with 10 additions and 14 deletions
22
st.c
22
st.c
|
@ -2152,20 +2152,21 @@ csireset(void) {
|
|||
void
|
||||
strhandle(void) {
|
||||
char *p = NULL;
|
||||
int i, j, narg;
|
||||
int j, narg, par;
|
||||
|
||||
strparse();
|
||||
narg = strescseq.narg;
|
||||
par = atoi(strescseq.args[0]);
|
||||
|
||||
switch(strescseq.type) {
|
||||
case ']': /* OSC -- Operating System Command */
|
||||
switch(i = atoi(strescseq.args[0])) {
|
||||
switch(par) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
if(narg > 1)
|
||||
xsettitle(strescseq.args[1]);
|
||||
break;
|
||||
return;
|
||||
case 4: /* color set */
|
||||
if(narg < 3)
|
||||
break;
|
||||
|
@ -2182,25 +2183,20 @@ strhandle(void) {
|
|||
*/
|
||||
redraw(0);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "erresc: unknown str ");
|
||||
strdump();
|
||||
break;
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 'k': /* old title set compatibility */
|
||||
xsettitle(strescseq.args[0]);
|
||||
break;
|
||||
return;
|
||||
case 'P': /* DSC -- Device Control String */
|
||||
case '_': /* APC -- Application Program Command */
|
||||
case '^': /* PM -- Privacy Message */
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
fprintf(stderr, "erresc: unknown str ");
|
||||
strdump();
|
||||
/* die(""); */
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
Loading…
Reference in a new issue