Fixed memory leaks (#485473)

This commit is contained in:
Zdenek Prikryl 2009-02-18 16:43:18 +00:00
commit 9cf70ecdca
2 changed files with 39 additions and 1 deletions

33
attr-2.4.43-leak.patch Normal file
View file

@ -0,0 +1,33 @@
diff -up attr-2.4.43/libattr/attr_copy_action.c.leak attr-2.4.43/libattr/attr_copy_action.c
--- attr-2.4.43/libattr/attr_copy_action.c.leak 2008-06-30 07:22:50.000000000 +0200
+++ attr-2.4.43/libattr/attr_copy_action.c 2009-02-17 09:50:38.000000000 +0100
@@ -53,7 +53,7 @@ free_attr_actions(void)
static int
attr_parse_attr_conf(struct error_context *ctx)
{
- char *text, *t;
+ char *text = NULL, *t;
size_t size_guess = 4096, len;
FILE *file;
char *pattern = NULL;
@@ -64,15 +64,16 @@ attr_parse_attr_conf(struct error_contex
return 0;
repeat:
- text = malloc(size_guess + 1);
- if (!text)
- goto fail;
-
if ((file = fopen(ATTR_CONF, "r")) == NULL) {
if (errno == ENOENT)
return 0;
goto fail;
}
+
+ text = malloc(size_guess + 1);
+ if (!text)
+ goto fail;
+
len = fread(text, 1, size_guess, file);
if (ferror(file))
goto fail;

View file

@ -1,12 +1,13 @@
Summary: Utilities for managing filesystem extended attributes
Name: attr
Version: 2.4.43
Release: 1%{?dist}
Release: 2%{?dist}
Conflicts: xfsdump < 2.0.0
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source: ftp://oss.sgi.com/projects/xfs/cmd_tars/attr_%{version}-1.tar.gz
Patch1: attr-2.2.0-multilib.patch
Patch2: attr-2.4.32-build.patch
Patch3: attr-2.4.43-leak.patch
License: GPLv2+
URL: http://oss.sgi.com/projects/xfs/
Group: System Environment/Base
@ -56,6 +57,7 @@ you'll also want to install attr.
# figure out how to chmod and how to install perl. :-)
%patch1 -p1 -b .multilib
%patch2 -p1 -b .build
%patch3 -p1 -b .leak
autoconf
@ -110,6 +112,9 @@ rm -rf $RPM_BUILD_ROOT
/%{_lib}/libattr.so.*
%changelog
* Wed Feb 18 2009 Zdenek Prikryl <zprikryl@redhat.com> 2.4.43-2
- Fixed memory leaks (#485473)
* Wed Jul 16 2008 Zdenek Prikryl <zprikryl@redhat.com> 2.4.43-1
- New version 2.4.43