From 301f790b81f57eda2d271b9231ba3c7de02e7126e1fe392153ab6c81fd683f0a Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Fri, 17 May 2019 22:21:50 +0000 Subject: [PATCH] Accepting request 703814 from home:bfrogers:branches:Virtualization - Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 * Patches added: 0045-kbd-state-fix-autorepeat-handling.patch - Fix regression in autorepeat key handling 0045-kbd-state-fix-autorepeat-handling.patch - Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 - Fix file list - Fix regression in autorepeat key handling 0045-kbd-state-fix-autorepeat-handling.patch - Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 - Fix file list OBS-URL: https://build.opensuse.org/request/show/703814 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=473 --- 0045-kbd-state-fix-autorepeat-handling.patch | 36 ++++++++++++++++++++ qemu-linux-user.changes | 7 ++++ qemu-linux-user.spec | 2 ++ qemu-testsuite.changes | 12 +++++++ qemu-testsuite.spec | 4 ++- qemu.changes | 12 +++++++ qemu.spec | 4 ++- qemu.spec.in | 2 +- 8 files changed, 76 insertions(+), 3 deletions(-) create mode 100644 0045-kbd-state-fix-autorepeat-handling.patch diff --git a/0045-kbd-state-fix-autorepeat-handling.patch b/0045-kbd-state-fix-autorepeat-handling.patch new file mode 100644 index 0000000..f323576 --- /dev/null +++ b/0045-kbd-state-fix-autorepeat-handling.patch @@ -0,0 +1,36 @@ +From: Gerd Hoffmann +Date: Tue, 14 May 2019 06:24:43 +0200 +Subject: kbd-state: fix autorepeat handling + +When allowing multiple down-events in a row (key autorepeat) we can't +use change_bit() any more to update the state, because autorepeat events +don't change the key state. We have to explicitly use set_bit() and +clear_bit() instead. + +Cc: qemu-stable@nongnu.org +Fixes: 35921860156e kbd-state: don't block auto-repeat events +Buglink: https://bugs.launchpad.net/qemu/+bug/1828272 +Signed-off-by: Gerd Hoffmann +Message-id: 20190514042443.10735-1-kraxel@redhat.com +Signed-off-by: Bruce Rogers +--- + ui/kbd-state.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/ui/kbd-state.c b/ui/kbd-state.c +index f3ab2d7a66..1668d17dda 100644 +--- a/ui/kbd-state.c ++++ b/ui/kbd-state.c +@@ -59,7 +59,11 @@ void qkbd_state_key_event(QKbdState *kbd, QKeyCode qcode, bool down) + } + + /* update key and modifier state */ +- change_bit(qcode, kbd->keys); ++ if (down) { ++ set_bit(qcode, kbd->keys); ++ } else { ++ clear_bit(qcode, kbd->keys); ++ } + switch (qcode) { + case Q_KEY_CODE_SHIFT: + case Q_KEY_CODE_SHIFT_R: diff --git a/qemu-linux-user.changes b/qemu-linux-user.changes index 8dc558c..ca27267 100644 --- a/qemu-linux-user.changes +++ b/qemu-linux-user.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri May 17 19:05:11 UTC 2019 - Bruce Rogers + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 +* Patches added: + 0045-kbd-state-fix-autorepeat-handling.patch + ------------------------------------------------------------------- Wed May 15 19:36:50 UTC 2019 - Bruce Rogers diff --git a/qemu-linux-user.spec b/qemu-linux-user.spec index 485b28e..a110858 100644 --- a/qemu-linux-user.spec +++ b/qemu-linux-user.spec @@ -78,6 +78,7 @@ Patch0041: 0041-qxl-avoid-unaligned-pointer-reads-w.patch Patch0042: 0042-libvhost-user-fix-Waddress-of-packe.patch Patch0043: 0043-target-i386-define-md-clear-bit.patch Patch0044: 0044-hw-intc-exynos4210_gic-provide-more.patch +Patch0045: 0045-kbd-state-fix-autorepeat-handling.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. ExcludeArch: s390 @@ -152,6 +153,7 @@ syscall layer occurs on the native hardware and operating system. %patch0042 -p1 %patch0043 -p1 %patch0044 -p1 +%patch0045 -p1 %build %define _lto_cflags %{nil} diff --git a/qemu-testsuite.changes b/qemu-testsuite.changes index b5cdef3..57c88e4 100644 --- a/qemu-testsuite.changes +++ b/qemu-testsuite.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Fri May 17 19:05:10 UTC 2019 - Bruce Rogers + +- Fix regression in autorepeat key handling + 0045-kbd-state-fix-autorepeat-handling.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 + +------------------------------------------------------------------- +Fri May 17 15:44:17 UTC 2019 - Andreas Schwab + +- Fix file list + ------------------------------------------------------------------- Wed May 15 19:36:49 UTC 2019 - Bruce Rogers diff --git a/qemu-testsuite.spec b/qemu-testsuite.spec index 97c644b..67707cc 100644 --- a/qemu-testsuite.spec +++ b/qemu-testsuite.spec @@ -188,6 +188,7 @@ Patch0041: 0041-qxl-avoid-unaligned-pointer-reads-w.patch Patch0042: 0042-libvhost-user-fix-Waddress-of-packe.patch Patch0043: 0043-target-i386-define-md-clear-bit.patch Patch0044: 0044-hw-intc-exynos4210_gic-provide-more.patch +Patch0045: 0045-kbd-state-fix-autorepeat-handling.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -999,6 +1000,7 @@ This package provides a service file for starting and stopping KSM. %patch0042 -p1 %patch0043 -p1 %patch0044 -p1 +%patch0045 -p1 pushd roms/seabios %patch1100 -p1 @@ -1605,6 +1607,7 @@ fi %ifarch s390x %_libexecdir/modules-load.d/kvm.conf %endif +%endif %dir %_datadir/icons/hicolor %dir %_datadir/icons/hicolor/*/ %dir %_datadir/icons/hicolor/*/apps @@ -1619,7 +1622,6 @@ fi %_datadir/icons/hicolor/512x512/apps/qemu.png %_datadir/icons/hicolor/scalable/apps/qemu.svg %_datadir/applications/qemu.desktop -%endif %files x86 %defattr(-, root, root) diff --git a/qemu.changes b/qemu.changes index b5cdef3..57c88e4 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Fri May 17 19:05:10 UTC 2019 - Bruce Rogers + +- Fix regression in autorepeat key handling + 0045-kbd-state-fix-autorepeat-handling.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.0 + +------------------------------------------------------------------- +Fri May 17 15:44:17 UTC 2019 - Andreas Schwab + +- Fix file list + ------------------------------------------------------------------- Wed May 15 19:36:49 UTC 2019 - Bruce Rogers diff --git a/qemu.spec b/qemu.spec index 3cdea9f..60b797d 100644 --- a/qemu.spec +++ b/qemu.spec @@ -188,6 +188,7 @@ Patch0041: 0041-qxl-avoid-unaligned-pointer-reads-w.patch Patch0042: 0042-libvhost-user-fix-Waddress-of-packe.patch Patch0043: 0043-target-i386-define-md-clear-bit.patch Patch0044: 0044-hw-intc-exynos4210_gic-provide-more.patch +Patch0045: 0045-kbd-state-fix-autorepeat-handling.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -999,6 +1000,7 @@ This package provides a service file for starting and stopping KSM. %patch0042 -p1 %patch0043 -p1 %patch0044 -p1 +%patch0045 -p1 pushd roms/seabios %patch1100 -p1 @@ -1605,6 +1607,7 @@ fi %ifarch s390x %_libexecdir/modules-load.d/kvm.conf %endif +%endif %dir %_datadir/icons/hicolor %dir %_datadir/icons/hicolor/*/ %dir %_datadir/icons/hicolor/*/apps @@ -1619,7 +1622,6 @@ fi %_datadir/icons/hicolor/512x512/apps/qemu.png %_datadir/icons/hicolor/scalable/apps/qemu.svg %_datadir/applications/qemu.desktop -%endif %files x86 %defattr(-, root, root) diff --git a/qemu.spec.in b/qemu.spec.in index e641c75..1d11ae7 100644 --- a/qemu.spec.in +++ b/qemu.spec.in @@ -1516,6 +1516,7 @@ fi %ifarch s390x %_libexecdir/modules-load.d/kvm.conf %endif +%endif %dir %_datadir/icons/hicolor %dir %_datadir/icons/hicolor/*/ %dir %_datadir/icons/hicolor/*/apps @@ -1530,7 +1531,6 @@ fi %_datadir/icons/hicolor/512x512/apps/qemu.png %_datadir/icons/hicolor/scalable/apps/qemu.svg %_datadir/applications/qemu.desktop -%endif %files x86 %defattr(-, root, root)