From 5b78769d28c625a19093faeeb78a956a0e67cfdb Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 30 Nov 2016 09:04:59 +0530 Subject: [PATCH] Report unshifted mode numbers --- kitty/parser.c | 2 +- kitty_tests/parser.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/kitty/parser.c b/kitty/parser.c index 9a41a8b0f..edfe21824 100644 --- a/kitty/parser.c +++ b/kitty/parser.c @@ -320,7 +320,7 @@ dispatch_csi(Screen *screen, PyObject DUMP_UNUSED *dump_callback) { #define SET_MODE(func) \ p1 = start_modifier == '?' ? 5 : 0; \ for (i = 0; i < num_params; i++) { \ - REPORT_COMMAND(func, params[i] << p1); \ + REPORT_COMMAND(func, params[i], start_modifier == '?'); \ func(screen, params[i] << p1); \ } \ break; diff --git a/kitty_tests/parser.py b/kitty_tests/parser.py index 26222bd27..46e675d2f 100644 --- a/kitty_tests/parser.py +++ b/kitty_tests/parser.py @@ -92,9 +92,9 @@ class TestParser(BaseTest): pb('\033[?J', ('screen_erase_in_display', 0, 1)) pb('\033[?2J', ('screen_erase_in_display', 2, 1)) pb('\033[h') - pb('\033[20;4h', ('screen_set_mode', 20), ('screen_set_mode', 4)) - pb('\033[?1000;1004h', ('screen_set_mode', 1000 << 5), ('screen_set_mode', 1004 << 5)) - pb('\033[20;4;20l', ('screen_reset_mode', 20), ('screen_reset_mode', 4), ('screen_reset_mode', 20)) + pb('\033[20;4h', ('screen_set_mode', 20, 0), ('screen_set_mode', 4, 0)) + pb('\033[?1000;1004h', ('screen_set_mode', 1000, 1), ('screen_set_mode', 1004, 1)) + pb('\033[20;4;20l', ('screen_reset_mode', 20, 0), ('screen_reset_mode', 4, 0), ('screen_reset_mode', 20, 0)) s.reset() pb('\033[1;3;4;7;9;34;44m', ('select_graphic_rendition', '1 3 4 7 9 34 44 ')) for attr in 'bold italic reverse strikethrough'.split():