[libvirt] [PATCH] util: fix index when building lock owners array

Laine Stump laine at laine.org
Wed Nov 14 17:12:58 UTC 2012


The "restart" function for locks allocates a new array according to
and pre-sets its length, then reads the owner pids from a JSON
document in a loop. Rather than adding each owner at a different
index, though, it repeatedly overwrites the last element of the array
with all the owners.
---
 src/util/virlockspace.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/util/virlockspace.c b/src/util/virlockspace.c
index 7e8c0a7..99b6182 100644
--- a/src/util/virlockspace.c
+++ b/src/util/virlockspace.c
@@ -435,7 +435,7 @@ virLockSpacePtr virLockSpaceNewPostExecRestart(virJSONValuePtr object)
                 goto error;
             }
 
-            res->owners[res->nOwners-1] = (pid_t)owner;
+            res->owners[j] = (pid_t)owner;
         }
 
         if (virHashAddEntry(lockspace->resources, res->name, res) < 0) {
-- 
1.7.11.7




More information about the libvir-list mailing list