vt: expose system-wide UTF-8 default setting via sysfs
Create a variable, default_utf8, that defines the system-wide default UTF-8 setting. This variable can be altered via sysfs. If the variable is properly set, this should mimimize breakage of UTF-8 encoded consoles when doing a reset or echo -e '\033c' and of newly opened/allocated consoles. This is based from patches by Jan Engelhardt and Paul LeoNerd Evans. Signed-off-by: Antonino Daplas <adaplas@gmail.com> Cc: Jan Engelhardt <jengelh@linux01.gwdg.de> Cc: Paul LeoNerd Evans <leonerd@leonerd.org.uk> Cc: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
d1e2306681
commit
042f10ec65
|
@ -157,6 +157,8 @@ static void blank_screen_t(unsigned long dummy);
|
||||||
static void set_palette(struct vc_data *vc);
|
static void set_palette(struct vc_data *vc);
|
||||||
|
|
||||||
static int printable; /* Is console ready for printing? */
|
static int printable; /* Is console ready for printing? */
|
||||||
|
static int default_utf8;
|
||||||
|
module_param(default_utf8, int, S_IRUGO | S_IWUSR);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ignore_poke: don't unblank the screen when things are typed. This is
|
* ignore_poke: don't unblank the screen when things are typed. This is
|
||||||
|
@ -1517,7 +1519,7 @@ static void reset_terminal(struct vc_data *vc, int do_clear)
|
||||||
vc->vc_charset = 0;
|
vc->vc_charset = 0;
|
||||||
vc->vc_need_wrap = 0;
|
vc->vc_need_wrap = 0;
|
||||||
vc->vc_report_mouse = 0;
|
vc->vc_report_mouse = 0;
|
||||||
vc->vc_utf = 0;
|
vc->vc_utf = default_utf8;
|
||||||
vc->vc_utf_count = 0;
|
vc->vc_utf_count = 0;
|
||||||
|
|
||||||
vc->vc_disp_ctrl = 0;
|
vc->vc_disp_ctrl = 0;
|
||||||
|
|
Loading…
Reference in New Issue