File attr-bz599562.patch of Package attr

From c4262841146af61fc5ef68aa2fba77ceed48df28 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Thu, 3 Jun 2010 15:23:04 +0200
Subject: [PATCH 1/3] attr_parse_attr_conf: eliminate a memory leak

---
 libattr/attr_copy_action.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c
index dc94224..030bbf5 100644
--- a/libattr/attr_copy_action.c
+++ b/libattr/attr_copy_action.c
@@ -129,6 +129,7 @@ repeat:
 
 		t += strcspn(t, "\n");
 	}
+	free(text);
 	return 0;
 
 parse_error:
-- 
1.6.6.1


From b7d85b22261c091ab069cd91e9b58a612e64e53b Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Thu, 3 Jun 2010 15:29:54 +0200
Subject: [PATCH 2/3] attr_parse_attr_conf: eliminate a double free

---
 libattr/attr_copy_action.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c
index 030bbf5..2697328 100644
--- a/libattr/attr_copy_action.c
+++ b/libattr/attr_copy_action.c
@@ -81,6 +81,7 @@ repeat:
 		fclose(file);
 		file = NULL;
 		free(text);
+		text = NULL;
 		size_guess *= 2;
 		goto repeat;
 	}
-- 
1.6.6.1


From e8f26d27b0484f37ab923f326f71dc5c4649965a Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Thu, 3 Jun 2010 15:30:19 +0200
Subject: [PATCH 3/3] setfattr.c: fix thinko in restore()

---
 setfattr/setfattr.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/setfattr/setfattr.c b/setfattr/setfattr.c
index 491c25a..0a14cfa 100644
--- a/setfattr/setfattr.c
+++ b/setfattr/setfattr.c
@@ -120,7 +120,7 @@ int restore(const char *filename)
 			break;
 		line++;
 		if (strncmp(l, "# file: ", 8) != 0) {
-			if (filename) {
+			if (file != stdin) {
 				fprintf(stderr, _("%s: %s: No filename found "
 				                  "in line %d, aborting\n"),
 					progname, filename, backup_line);
-- 
1.6.6.1

openSUSE Build Service is sponsored by