fix memory leak
This commit is contained in:
parent
4258df1936
commit
f0cc7da47f
37
ksh-20120801-memlik.patch
Normal file
37
ksh-20120801-memlik.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
diff -up ksh-20120801/src/cmd/ksh93/sh/array.c.memlik ksh-20120801/src/cmd/ksh93/sh/array.c
|
||||||
|
--- ksh-20120801/src/cmd/ksh93/sh/array.c.memlik 2012-06-07 00:00:42.000000000 +0200
|
||||||
|
+++ ksh-20120801/src/cmd/ksh93/sh/array.c 2013-06-11 16:52:47.557123973 +0200
|
||||||
|
@@ -1701,7 +1701,11 @@ void *nv_associative(register Namval_t *
|
||||||
|
ap->header.scope = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
- dtclose(ap->header.table);
|
||||||
|
+ {
|
||||||
|
+ if((ap->header.nelem&ARRAY_MASK)==0 && (ap->cur=nv_search("0",ap->header.table,0)))
|
||||||
|
+ nv_associative(np,(char*)0,NV_ADELETE);
|
||||||
|
+ dtclose(ap->header.table);
|
||||||
|
+ }
|
||||||
|
return((void*)ap);
|
||||||
|
case NV_ANEXT:
|
||||||
|
if(!ap->pos)
|
||||||
|
diff -up ksh-20120801/src/cmd/ksh93/sh/name.c.memlik ksh-20120801/src/cmd/ksh93/sh/name.c
|
||||||
|
--- ksh-20120801/src/cmd/ksh93/sh/name.c.memlik 2012-07-23 18:21:57.000000000 +0200
|
||||||
|
+++ ksh-20120801/src/cmd/ksh93/sh/name.c 2013-06-11 16:19:41.036648218 +0200
|
||||||
|
@@ -2465,6 +2465,8 @@ static void table_unset(Shell_t *shp, re
|
||||||
|
}
|
||||||
|
}
|
||||||
|
npnext = (Namval_t*)dtnext(root,np);
|
||||||
|
+ if(nv_arrayptr(np))
|
||||||
|
+ nv_putsub(np,NIL(char*),ARRAY_SCAN);
|
||||||
|
_nv_unset(np,flags);
|
||||||
|
nv_delete(np,root,0);
|
||||||
|
}
|
||||||
|
@@ -3326,7 +3328,7 @@ int nv_rename(register Namval_t *np, int
|
||||||
|
shp->last_root = last_root;
|
||||||
|
if(flags&NV_MOVE)
|
||||||
|
{
|
||||||
|
- if(arraynp && !nv_isattr(np,NV_MINIMAL) && (mp=(Namval_t*)np->nvenv) && (ap=nv_arrayptr(mp)))
|
||||||
|
+ if(arraynp && !nv_isattr(np,NV_MINIMAL) && (mp=(Namval_t*)np->nvenv) && (ap=nv_arrayptr(mp)) && !ap->fun)
|
||||||
|
ap->nelem++;
|
||||||
|
}
|
||||||
|
if((nv_arrayptr(nr) && !arraynr) || nv_isvtree(nr))
|
7
ksh.spec
7
ksh.spec
@ -6,7 +6,7 @@ URL: http://www.kornshell.com/
|
|||||||
Group: System Environment/Shells
|
Group: System Environment/Shells
|
||||||
License: EPL
|
License: EPL
|
||||||
Version: 20120801
|
Version: 20120801
|
||||||
Release: 9%{?dist}
|
Release: 10%{?dist}
|
||||||
Source0: http://www.research.att.com/~gsf/download/tgz/ast-ksh.%{releasedate}.tgz
|
Source0: http://www.research.att.com/~gsf/download/tgz/ast-ksh.%{releasedate}.tgz
|
||||||
Source1: http://www.research.att.com/~gsf/download/tgz/INIT.%{releasedate}.tgz
|
Source1: http://www.research.att.com/~gsf/download/tgz/INIT.%{releasedate}.tgz
|
||||||
Source2: kshcomp.conf
|
Source2: kshcomp.conf
|
||||||
@ -26,6 +26,7 @@ Patch5: ksh-20120801-tabfix.patch
|
|||||||
Patch6: ksh-20120801-cdfix2.patch
|
Patch6: ksh-20120801-cdfix2.patch
|
||||||
Patch7: ksh-20130214-fixkill.patch
|
Patch7: ksh-20130214-fixkill.patch
|
||||||
Patch8: ksh-20120801-kshmfix.patch
|
Patch8: ksh-20120801-kshmfix.patch
|
||||||
|
Patch9: ksh-20120801-memlik.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
Conflicts: pdksh
|
Conflicts: pdksh
|
||||||
@ -53,6 +54,7 @@ with "sh" (the Bourne Shell).
|
|||||||
%patch6 -p1 -b .cdfix2
|
%patch6 -p1 -b .cdfix2
|
||||||
%patch7 -p1 -b .fixkill
|
%patch7 -p1 -b .fixkill
|
||||||
%patch8 -p1 -b .kshmfix
|
%patch8 -p1 -b .kshmfix
|
||||||
|
%patch9 -p1 -b .memlik
|
||||||
|
|
||||||
#/dev/fd test does not work because of mock
|
#/dev/fd test does not work because of mock
|
||||||
sed -i 's|ls /dev/fd|ls /proc/self/fd|' src/cmd/ksh93/features/options
|
sed -i 's|ls /dev/fd|ls /proc/self/fd|' src/cmd/ksh93/features/options
|
||||||
@ -147,6 +149,9 @@ fi
|
|||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jun 12 2013 Michal Hlavinka <mhlavink@redhat.com> - 20120801-10
|
||||||
|
- fix memory leak
|
||||||
|
|
||||||
* Mon Jun 10 2013 Michal Hlavinka <mhlavink@redhat.com> - 20120801-9
|
* Mon Jun 10 2013 Michal Hlavinka <mhlavink@redhat.com> - 20120801-9
|
||||||
- monitor mode in scripts wasn't working
|
- monitor mode in scripts wasn't working
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user