expand accepting states for primary device attributes

pull/1859/head
nick black 3 years ago
parent ea41c5ebaf
commit 5861d16d33
No known key found for this signature in database
GPG Key ID: 5F43400C21CBFACC

@ -640,7 +640,7 @@ typedef enum {
STATE_DA_1_SEMI, // got '1;'
STATE_DA_1_0, // got '1;0', XTSMGRAPHICS color registers or VT101
STATE_DA_6, // got '6', could be VT102 or VT220/VT320/VT420
STATE_DA_DRAIN, // drain out the primary DA to 'c'
STATE_DA_DRAIN, // drain out the primary DA to an alpha
STATE_SIXEL,// XTSMGRAPHICS about Sixel geometry (got '2')
STATE_SIXEL_SEMI1, // got first semicolon in sixel geometry, want Ps
STATE_SIXEL_SUCCESS, // got Ps == 0, want second semicolon
@ -1049,36 +1049,33 @@ pump_control_read(query_state* inits, unsigned char c){
inits->state = STATE_DA_DRAIN;
}else if(c == '6'){
inits->state = STATE_DA_6;
}else if(c == 'c'){
}else if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
return 1;
}
break;
case STATE_DA_1:
if(c == 'c'){
if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
return 1;
}else if(c == ';'){
inits->state = STATE_DA_1_SEMI;
}else{
// FIXME error?
}
} // FIXME error?
break;
case STATE_DA_1_SEMI:
if(c == '2'){ // VT100 with Advanced Video Option
inits->state = STATE_DA_DRAIN;
}else if(c == '0'){
inits->state = STATE_DA_1_0;
}
}else if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
} // FIXME error?
break;
case STATE_DA_1_0:
if(c == 'c'){ // VT101 with No Options
if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
}else if(c == ';'){
inits->state = STATE_SIXEL_CREGS;
}else{
// FIXME error?
}
} // FIXME error?
break;
case STATE_SIXEL_CREGS:
if(c == 'S'){
@ -1089,14 +1086,14 @@ pump_control_read(query_state* inits, unsigned char c){
}
break;
case STATE_DA_6:
if(c == 'c'){
if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
return 1;
}
// FIXME
break;
case STATE_DA_DRAIN:
if(c == 'c'){
if(c >= 0x40 && c <= 0x7E){
inits->state = STATE_NULL;
return 1;
}

Loading…
Cancel
Save