This is the mail archive of the cluster-cvs@sourceware.org mailing list for the cluster.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

cluster: STABLE3 - libfence: fix premature free of victim name


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=c4c056a6c9ef5f8346fd9c1b871291f253791aa7
Commit:        c4c056a6c9ef5f8346fd9c1b871291f253791aa7
Parent:        9c04acf190e14e22e1501cfa257f2be97b0b863f
Author:        Fabio M. Di Nitto <fdinitto@redhat.com>
AuthorDate:    Wed Feb 25 09:39:36 2009 +0100
Committer:     Fabio M. Di Nitto <fdinitto@redhat.com>
CommitterDate: Wed Feb 25 09:39:36 2009 +0100

libfence: fix premature free of victim name

also fixes fencing for multiple methods

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
---
 fence/libfence/agent.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/fence/libfence/agent.c b/fence/libfence/agent.c
index 883202f..51e9371 100644
--- a/fence/libfence/agent.c
+++ b/fence/libfence/agent.c
@@ -377,8 +377,7 @@ int fence_node(char *victim, struct fence_log *log, int log_size,
 
 		if (device)
 			free(device);
-		if (victim_nodename)
-			free(victim_nodename);
+
 		free(method);
 
 		/* we return 0 for fencing success when use_device has
@@ -387,6 +386,9 @@ int fence_node(char *victim, struct fence_log *log, int log_size,
 		if (!error)
 			break;
 	}
+
+	if (victim_nodename)
+		free(victim_nodename);
  out:
 	ccs_disconnect(cd);
  ret:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]