Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

tty: vt: use case ranges for CSI+m fg/bg colors

Replacing the default case with the iffery by case ranges makes the code
more understandable at last.

Signed-off-by: "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
Tested-by: Helge Deller <deller@gmx.de> # parisc STI console
Link: https://lore.kernel.org/r/20240122110401.7289-11-jirislaby@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Jiri Slaby (SUSE) and committed by
Greg Kroah-Hartman
76ec3a7a 09e7f9f6

+16 -19
+16 -19
drivers/tty/vt/vt.c
··· 1795 1795 vc->state.color = (vc->vc_def_color & 0xf0) | 1796 1796 (vc->state.color & 0x0f); 1797 1797 break; 1798 - default: 1799 - if (vc->vc_par[i] >= CSI_m_BRIGHT_FG_COLOR_BEG && 1800 - vc->vc_par[i] <= CSI_m_BRIGHT_BG_COLOR_END) { 1801 - if (vc->vc_par[i] < CSI_m_BRIGHT_BG_COLOR_BEG) 1802 - vc->state.intensity = VCI_BOLD; 1803 - vc->vc_par[i] -= CSI_m_BRIGHT_FG_COLOR_OFF; 1804 - } 1805 - if (vc->vc_par[i] >= CSI_m_FG_COLOR_BEG && 1806 - vc->vc_par[i] <= CSI_m_FG_COLOR_END) { 1807 - vc->vc_par[i] -= CSI_m_FG_COLOR_BEG; 1808 - vc->state.color = color_table[vc->vc_par[i]] | 1809 - (vc->state.color & 0xf0); 1810 - } else if (vc->vc_par[i] >= CSI_m_BG_COLOR_BEG && 1811 - vc->vc_par[i] <= CSI_m_BG_COLOR_END) { 1812 - vc->vc_par[i] -= CSI_m_BG_COLOR_BEG; 1813 - vc->state.color = (color_table[vc->vc_par[i]] << 4) | 1814 - (vc->state.color & 0x0f); 1815 - } 1816 - 1798 + case CSI_m_BRIGHT_FG_COLOR_BEG ... CSI_m_BRIGHT_FG_COLOR_END: 1799 + vc->state.intensity = VCI_BOLD; 1800 + vc->vc_par[i] -= CSI_m_BRIGHT_FG_COLOR_OFF; 1801 + fallthrough; 1802 + case CSI_m_FG_COLOR_BEG ... CSI_m_FG_COLOR_END: 1803 + vc->vc_par[i] -= CSI_m_FG_COLOR_BEG; 1804 + vc->state.color = color_table[vc->vc_par[i]] | 1805 + (vc->state.color & 0xf0); 1806 + break; 1807 + case CSI_m_BRIGHT_BG_COLOR_BEG ... CSI_m_BRIGHT_BG_COLOR_END: 1808 + vc->vc_par[i] -= CSI_m_BRIGHT_BG_COLOR_OFF; 1809 + fallthrough; 1810 + case CSI_m_BG_COLOR_BEG ... CSI_m_BG_COLOR_END: 1811 + vc->vc_par[i] -= CSI_m_BG_COLOR_BEG; 1812 + vc->state.color = (color_table[vc->vc_par[i]] << 4) | 1813 + (vc->state.color & 0x0f); 1817 1814 break; 1818 1815 } 1819 1816 update_attr(vc);