- fix #629196: Double free in free_wstr

- fix license tag, add description
- remove BuildRoot tag
This commit is contained in:
Vojtech Vitek (V-Teq) 2010-11-02 11:32:25 +01:00
parent d2e4fcead6
commit 0ca990fc6b
2 changed files with 36 additions and 3 deletions

View File

@ -0,0 +1,23 @@
Index: node.c
===================================================================
RCS file: /sources/gawk/gawk-devel/node.c,v
retrieving revision 1.3
diff -u -r1.3 node.c
--- node.c 6 May 2010 19:00:58 -0000 1.3
+++ node.c 27 Oct 2010 17:56:49 -0000
@@ -758,6 +758,15 @@
assert((n->flags & (STRING|STRCUR)) != 0);
+ /*
+ * Don't convert global null string or global null field
+ * variables to a wide string. They are both zero-length anyway.
+ * This also avoids future double-free errors while releasing
+ * shallow copies, eg. *tmp = *Null_field; free_wstr(tmp);
+ */
+ if (n == Nnull_string || n == Null_field)
+ return n;
+
if ((n->flags & WSTRCUR) != 0) {
if (ptr == NULL)
return n;

View File

@ -1,12 +1,16 @@
Summary: The GNU version of the awk text processing utility
Name: gawk
Version: 3.1.8
Release: 1%{?dist}
License: GPLv3+
Release: 2%{?dist}
# Most of source files are licensed under GPLv3+,
# several files are GPL or LGPLv2.1+ licensed,
# gettext.h is LGPL and random.c is BSD licensed
License: GPLv3+ and GPL and LGPLv3+ and LGPL and BSD
Group: Applications/Text
URL: http://www.gnu.org/software/gawk/gawk.html
Source0: http://ftp.gnu.org/gnu/gawk/gawk-%{version}.tar.bz2
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
# http://lists.gnu.org/archive/html/bug-gnu-utils/2010-11/msg00005.html
Patch: gawk-3.1.8-double-free-wstptr.patch
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
@ -21,6 +25,7 @@ considered to be a standard Linux tool for processing text.
%prep
%setup -q
%patch -p0 -b .double-free-wstptr
%build
%configure --bindir=/bin --disable-libsigsegv
@ -69,6 +74,11 @@ fi
%{_datadir}/awk
%changelog
* Tue Nov 02 2010 Vojtech Vitek (V-Teq) <vvitek@redhat.com> - 3.1.8-2
- fix #629196: Double free in free_wstr
- fix license tag, add description
- remove BuildRoot tag
* Fri May 7 2010 Stepan Kasal <kasal@ucw.cz> - 3.1.8-1
- new upstream version
- drop upstreamed patches