From 6c1b2f3c8111f1e436639e03761a4567b7de44d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 18 Jul 2019 19:48:37 +0200 Subject: [PATCH] csi: recognize, but ignore, modifyOtherKeys et al resource setters --- csi.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/csi.c b/csi.c index ab128c28..44e1841a 100644 --- a/csi.c +++ b/csi.c @@ -875,6 +875,29 @@ csi_dispatch(struct terminal *term, uint8_t final) break; } + case 'm': + if (term->vt.params.idx == 0) { + /* Reset all */ + } else { + int resource = vt_param_get(term, 0, 0); + int value __attribute__((unused)) = vt_param_get(term, 1, 0); + + switch (resource) { + case 0: /* modifyKeyboard */ + case 1: /* modifyCursorKeys */ + case 2: /* modifyFunctionKeys */ + case 4: /* modifyOtherKeys */ + /* Ignored, we always report modifiers */ + break; + + default: + LOG_WARN("invalid resource %d in %s", + resource, csi_as_string(term, final)); + break; + } + } + break; /* final == 'm' */ + default: LOG_ERR("unimplemented: %s", csi_as_string(term, final)); abort();