Skip to content

Commit

Permalink
Fix potential segfault when loading keyboard layout settings (#909)
Browse files Browse the repository at this point in the history
Previously, lxqt-config-input would crash when setxkbmap reported at
least one but fewer variants than layouts. Adjust the existing size
check to prevent that from happening.
  • Loading branch information
krukai committed Jan 12, 2023
1 parent eb1e4c1 commit 0698dc9
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion lxqt-config-input/keyboardlayoutconfig.cpp
Expand Up @@ -85,7 +85,8 @@ void KeyboardLayoutConfig::loadSettings() {

const int size = layouts.size(), variantsSize = variants.size();
for(int i = 0; i < size; ++i) {
currentLayouts_.append(QPair<QString, QString>(QString::fromUtf8(layouts.at(i)), variantsSize > 0 ? QString::fromUtf8(variants.at(i)) : QString()));
// Note: there can be fewer variants than layouts configured
currentLayouts_.append(QPair<QString, QString>(QString::fromUtf8(layouts.at(i)), i < variantsSize ? QString::fromUtf8(variants.at(i)) : QString()));
}

setxkbmap.close();
Expand Down

0 comments on commit 0698dc9

Please sign in to comment.