qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC 1/4] Fix issue affecting get_int32_le() in vmstate.c


From: Alvise Rigo
Subject: [Qemu-devel] [RFC 1/4] Fix issue affecting get_int32_le() in vmstate.c
Date: Tue, 25 Feb 2014 17:52:47 +0100

The method is not behaving in the way it's supposed to. It should return
the new value only if it's less than the actual one.

Signed-off-by: Alvise Rigo <address@hidden>
---
 vmstate.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/vmstate.c b/vmstate.c
index 284b080..038b274 100644
--- a/vmstate.c
+++ b/vmstate.c
@@ -326,11 +326,11 @@ const VMStateInfo vmstate_info_int32_equal = {
 
 static int get_int32_le(QEMUFile *f, void *pv, size_t size)
 {
-    int32_t *old = pv;
-    int32_t new;
-    qemu_get_sbe32s(f, &new);
+    int32_t old = *(int32_t *)pv;
+    int32_t *new = pv;
+    qemu_get_sbe32s(f, new);
 
-    if (*old <= new) {
+    if (*new <= old) {
         return 0;
     }
     return -EINVAL;
-- 
1.8.3.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]