vt: tidy lazy initialization of escape parameters

This commit is contained in:
Daniel Eklöf 2019-08-27 15:24:49 +02:00
parent 936526ed5b
commit 382bea8309
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

12
vt.c
View file

@ -871,16 +871,16 @@ action(struct terminal *term, enum action _action, uint8_t c)
case ACTION_PARAM:
if (term->vt.params.idx == 0) {
struct vt_param *param = &term->vt.params.v[0];
param->value = 0;
param->sub.idx = 0;
term->vt.params.idx = 1;
term->vt.params.v[0].value = 0;
term->vt.params.v[0].sub.idx = 0;
}
if (c == ';') {
term->vt.params.idx++;
term->vt.params.v[term->vt.params.idx - 1].value = 0;
term->vt.params.v[term->vt.params.idx - 1].sub.idx = 0;
term->vt.params.v[term->vt.params.idx - 1].sub.value[0] = 0;
struct vt_param *param = &term->vt.params.v[term->vt.params.idx++];
param->value = 0;
param->sub.idx = 0;
} else if (c == ':') {
struct vt_param *param = &term->vt.params.v[term->vt.params.idx - 1];
param->sub.value[param->sub.idx++] = 0;