Skip to contentSkip to conversation

speakup: Fix var_id_t values and thus keymap

PATCH In review Samuel Thibault 2 participants 4 messages Oct 12, 2020 – Nov 3, 2020 Speakup console speech driver

lore
Share & tools
lore

Samuel Thibault

author maintainer
#0 lore raw

PATCH 1/1 speakup: Fix var_id_t values and thus keymap

commit d97a9d7aea04 ("staging/speakup: Add inflection synth parameter") introduced a new "inflection" speakup parameter next to "pitch", but the values of the var_id_t enum are actually used by the keymap tables so we must not renumber them. The effect was that notably the volume control shortcut (speakup-1 or 2) was actually changing the inflection.

This moves the INFLECTION value at the end of the var_id_t enum to fix back the enum values. This also adds a warning about it.

Fixes d97a9d7aea04 ("staging/speakup: Add inflection synth parameter")
---
 drivers/accessibility/speakup/spk_types.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
drivers/accessibility/speakup/spk_types.h +6 -2
index 7398f1196e10..91fca3033a45 100644
@@ -32,6 +32,10 @@ enum {
 	E_NEW_DEFAULT,
 };
 
+/*
+ * Note: add new members at the end, speakupmap.h depends on the values of the
+ * enum starting from SPELL_DELAY (see inc_dec_var)
+ */
 enum var_id_t {
 	VERSION = 0, SYNTH, SILENT, SYNTH_DIRECT,
 	KEYMAP, CHARS,
@@ -42,9 +46,9 @@ enum var_id_t {
 	SAY_CONTROL, SAY_WORD_CTL, NO_INTERRUPT, KEY_ECHO,
 	SPELL_DELAY, PUNC_LEVEL, READING_PUNC,
 	ATTRIB_BLEEP, BLEEPS,
-	RATE, PITCH, INFLECTION, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG,
+	RATE, PITCH, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG,
 	DIRECT, PAUSE,
-	CAPS_START, CAPS_STOP, CHARTAB,
+	CAPS_START, CAPS_STOP, CHARTAB, INFLECTION,
 	MAXVARS
 };
 
Signature · 1 line
2.20.1
author maintainer
#1 lore raw

Ping?

This is a change that should got into 5.10, in the meanwhile the bug (appeared in 5.8) is very inconvenient for users.

Samuel

Samuel Thibault, le lun. 12 oct. 2020 18:06:46 +0200, a ecrit:

Quoted 48 lines

commit d97a9d7aea04 ("staging/speakup: Add inflection synth parameter") introduced a new "inflection" speakup parameter next to "pitch", but the values of the var_id_t enum are actually used by the keymap tables so we must not renumber them. The effect was that notably the volume control shortcut (speakup-1 or 2) was actually changing the inflection.

This moves the INFLECTION value at the end of the var_id_t enum to fix back the enum values. This also adds a warning about it.

Fixes d97a9d7aea04 ("staging/speakup: Add inflection synth parameter")
---
 drivers/accessibility/speakup/spk_types.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
drivers/accessibility/speakup/spk_types.h +6 -2
index 7398f1196e10..91fca3033a45 100644
@@ -32,6 +32,10 @@ enum {
 	E_NEW_DEFAULT,
 };
 
+/*
+ * Note: add new members at the end, speakupmap.h depends on the values of the
+ * enum starting from SPELL_DELAY (see inc_dec_var)
+ */
 enum var_id_t {
 	VERSION = 0, SYNTH, SILENT, SYNTH_DIRECT,
 	KEYMAP, CHARS,
@@ -42,9 +46,9 @@ enum var_id_t {
 	SAY_CONTROL, SAY_WORD_CTL, NO_INTERRUPT, KEY_ECHO,
 	SPELL_DELAY, PUNC_LEVEL, READING_PUNC,
 	ATTRIB_BLEEP, BLEEPS,
-	RATE, PITCH, INFLECTION, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG,
+	RATE, PITCH, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG,
 	DIRECT, PAUSE,
-	CAPS_START, CAPS_STOP, CHARTAB,
+	CAPS_START, CAPS_STOP, CHARTAB, INFLECTION,
 	MAXVARS
 };
 
Signature · 1 line
2.20.1
#2 lore raw
Quoted 4 lines · Samuel Thibault

Ping?

This is a change that should got into 5.10, in the meanwhile the bug (appeared in 5.8) is very inconvenient for users.

It's in my to-apply queue, sorry, it's really long at the moment. Don't worry, it's not lost...

thanks,

greg k-h

author maintainer
#3 lore raw

Greg KH, le mar. 03 nov. 2020 15:41:19 +0100, a ecrit:

Quoted 5 lines · Samuel Thibault
Quoted 2 lines

This is a change that should got into 5.10, in the meanwhile the bug (appeared in 5.8) is very inconvenient for users.

It's in my to-apply queue, sorry, it's really long at the moment.

Ok, np, juste making sure!

Thanks,
Samuel