diff options
author | Anthony Liguori <aliguori@us.ibm.com> | 2013-04-22 08:04:21 -0500 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2013-04-22 08:04:21 -0500 |
commit | d639498852773a6019cf1b970dd8dc2f3791c45b (patch) | |
tree | 452e64ff4b03f6538d469a5e484dddd6e4248f33 | |
parent | 68c0aa6e02f79f8825c0c5dc4c7ed25d524aaa8b (diff) | |
parent | dcc6ceffc066745777960a1f0d32f3a555924f65 (diff) |
Merge remote-tracking branch 'luiz/queue/qmp' into staging
# By Amos Kong (1) and Luiz Capitulino (1)
# Via Luiz Capitulino
* luiz/queue/qmp:
virtio-balloon: fix integer overflow in BALLOON_CHANGE QMP event
monitor: fix the wrong order of releasing keys
Message-id: 1366375833-995-1-git-send-email-lcapitulino@redhat.com
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | hw/virtio/virtio-balloon.c | 2 | ||||
-rw-r--r-- | ui/input.c | 8 |
2 files changed, 4 insertions, 6 deletions
diff --git a/hw/virtio/virtio-balloon.c b/hw/virtio/virtio-balloon.c index c2c446eb9..76e32ceef 100644 --- a/hw/virtio/virtio-balloon.c +++ b/hw/virtio/virtio-balloon.c @@ -275,7 +275,7 @@ static void virtio_balloon_set_config(VirtIODevice *vdev, dev->actual = le32_to_cpu(config.actual); if (dev->actual != oldactual) { qemu_balloon_changed(ram_size - - (dev->actual << VIRTIO_BALLOON_PFN_SHIFT)); + ((ram_addr_t) dev->actual << VIRTIO_BALLOON_PFN_SHIFT)); } } diff --git a/ui/input.c b/ui/input.c index 9abef0cd7..ecfeb4382 100644 --- a/ui/input.c +++ b/ui/input.c @@ -234,13 +234,11 @@ static void free_keycodes(void) static void release_keys(void *opaque) { - int i; - - for (i = 0; i < keycodes_size; i++) { - if (keycodes[i] & 0x80) { + while (keycodes_size > 0) { + if (keycodes[--keycodes_size] & 0x80) { kbd_put_keycode(0xe0); } - kbd_put_keycode(keycodes[i]| 0x80); + kbd_put_keycode(keycodes[keycodes_size] | 0x80); } free_keycodes(); |