qmk/qmk_firmware

[Bug] UCIS input not cleared after resolving mnemonic

Open

#22,438 opened on Nov 10, 2023

View on GitHub
 (1 comment) (0 reactions) (0 assignees)C (43,867 forks)batch import
bughelp wanted

Repository metrics

Stars
 (20,368 stars)
PR merge metrics
 (Avg merge 20d 9h) (27 merged PRs in 30d)

Description

Describe the Bug

After resolving a unicode mnemonic, successfully or not, the input buffer should be cleared. In the current code the old input is kept in the buffer, potentially leading to incorrect resolution of future inputs.

Ex. enter the mnemonic "alpha", input is now "alpha". If you then enter the mnemonic "beta", input contains "betaa", which is incorrect.

I suggest using memset to zero out the input buffer at the end of ucis_finish.

Am I missing something important?

Keyboard Used

No response

Link to product page (if applicable)

No response

Operating System

No response

qmk doctor Output

No response

Is AutoHotKey / Karabiner installed

  • AutoHotKey (Windows)
  • Karabiner (macOS)

Other keyboard-related software installed

No response

Additional Context

No response

Contributor guide