我们有一个Yubiky 5 NFC,带有静态OTP密码,其中第一个字母是小写字母。在Ubuntu 20.04.2 LTS设备上运行的Qt5应用程序中使用此密码时,第一个字母将转换为大写字母。经过一些快速测试,如果第一个字母后面的两个字母是大写字母,那么当触摸Yubiky时,第一个字母就会变成大写字母。
复制步骤:
- 将插槽1 OTP静态密码配置为"vVV"(第一个字母小写,后面两个字母大写(
- 打开QT应用程序(在我们的案例中,我们使用了QtCreator 4.11.0,QT 5.12.8(
- 打开任何文本字段(例如通过帮助->索引找到的文本字段(
- 当字段为空时,在该字段中按几次退格键,然后立即触摸yubi键输入密码
- 输入的密码将是"VVV"而不是"VVV">
- 如果您现在再按一次yubi键,将输入"vVV"(因此该字段的内容将为"VVVvVV为了获得100%的再现性,在触摸yubi键之前按下退格键几次是很重要的。如果没有,那么我们有时只能引发这个问题。这种行为发生在我们系统上运行的任何Qt5应用程序中。无法在Windows上复制
其他人过去也遇到过类似的行为吗?或者有人能证实这种行为吗?更好的是,是否有某种修复方法可用?
对于遇到相同问题的人来说,这是由Qt QPA X11/XCB层中的一个错误引起的。看见https://bugreports.qt.io/browse/QTBUG-95933.