Commit 0b4139ad authored by Samuel Thibault's avatar Samuel Thibault Committed by Greg Kroah-Hartman

speakup: Fix bogus caps on speaking unicode characters

commit 33590c18 ("speakup: Support spelling unicode characters")
mistakenly passed unicode characters to IS_CHAR(), which only
supports latin1.  Let's assume non-latin1 is lower case, like is done
in spell_word().
Signed-off-by: default avatarSamuel Thibault <samuel.thibault@ens-lyon.org>
Reviewed-by: default avatarChris Brannon <chris@the-brannons.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a50ef316
...@@ -433,12 +433,12 @@ static void speak_char(u16 ch) ...@@ -433,12 +433,12 @@ static void speak_char(u16 ch)
struct var_t *direct = spk_get_var(DIRECT); struct var_t *direct = spk_get_var(DIRECT);
if (ch >= 0x100 || (direct && direct->u.n.value)) { if (ch >= 0x100 || (direct && direct->u.n.value)) {
if (IS_CHAR(ch, B_CAP)) { if (ch < 0x100 && IS_CHAR(ch, B_CAP)) {
spk_pitch_shift++; spk_pitch_shift++;
synth_printf("%s", spk_str_caps_start); synth_printf("%s", spk_str_caps_start);
} }
synth_putwc_s(ch); synth_putwc_s(ch);
if (IS_CHAR(ch, B_CAP)) if (ch < 0x100 && IS_CHAR(ch, B_CAP))
synth_printf("%s", spk_str_caps_stop); synth_printf("%s", spk_str_caps_stop);
return; return;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment