<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to patches</title><link href="https://sourceforge.net/p/regina-rexx/patches/" rel="alternate"/><link href="https://sourceforge.net/p/regina-rexx/patches/feed.atom" rel="self"/><id>https://sourceforge.net/p/regina-rexx/patches/</id><updated>2002-07-23T02:49:55Z</updated><subtitle>Recent changes to patches</subtitle><entry><title>Memory leak in rexxsaa.c</title><link href="https://sourceforge.net/p/regina-rexx/patches/1/" rel="alternate"/><published>2002-07-23T02:49:55Z</published><updated>2002-07-23T02:49:55Z</updated><author><name>Robert Mahoney</name><uri>https://sourceforge.net/u/rmahoney/</uri></author><id>https://sourceforge.net44c0f6c19e90e84bbc97787cc79e572d4f0d4646</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;There is a 4K leak everytime an rexx saa call is made.  For example &lt;br /&gt;
whenever I use the RexxUtils package,almost every call leaks 4K.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;If the following line is added at line 1269 to the &lt;br /&gt;
RexxVariablePool function in rexxsaa.c then the memory leak goes &lt;br /&gt;
away.&lt;/p&gt;
&lt;p&gt;IfcFreeMemory(Strings[1]);        &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;The case &lt;br /&gt;
statement now looks like this:&lt;/p&gt;
&lt;p&gt;case RXSHV_FETCH:                              /* MH 26-&lt;br /&gt;
12-95 */&lt;br /&gt;
{&lt;br /&gt;
IVPcode = IVPcode ? IVPcode : RX_GETVAR;    /* JH &lt;br /&gt;
20-10-99 */&lt;br /&gt;
Lengths[0] = Req-&amp;amp;gt;shvname.strlength ;&lt;br /&gt;
Strings[0] &lt;br /&gt;
= Req-&amp;amp;gt;shvname.strptr ;&lt;br /&gt;
/* FIXME, FGC: This two lines are &lt;br /&gt;
unnecessary&lt;br /&gt;
Lengths[1] = Req-&amp;amp;gt;shvvalue.strlength ;&lt;/p&gt;
&lt;p&gt;Strings[1] = Req-&amp;amp;gt;shvvalue.strptr ; */&lt;br /&gt;
Code = IfcVarPool( TSD, &lt;br /&gt;
IVPcode, Lengths, Strings ) ; /* JH 20-10-99 */&lt;/p&gt;
&lt;p&gt;Req-&amp;amp;gt;shvret = &lt;br /&gt;
RXSHV_OK ;&lt;br /&gt;
if (Code==RX_CODE_NOVALUE)&lt;br /&gt;
Req-&lt;br /&gt;
&amp;amp;gt;shvret |= RXSHV_NEWV ;&lt;br /&gt;
else if &lt;br /&gt;
(Code==RX_CODE_INVNAME)&lt;br /&gt;
Req-&amp;amp;gt;shvret |= &lt;br /&gt;
RXSHV_BADN ;&lt;br /&gt;
else if (Code!=RXSHV_OK)&lt;br /&gt;
exiterror( &lt;br /&gt;
ERR_INTERPRETER_FAILURE, 1, __FILE__, __LINE__, &amp;amp;quot;&amp;amp;quot; )  ;&lt;/p&gt;
&lt;p&gt;FillReqValue( Req, Lengths[1], Strings[1] ) ;&lt;/p&gt;
&lt;p&gt;IfcFreeMemory(Strings[1]);                  /* RM 22-07-02 */&lt;br /&gt;
TSD-&lt;br /&gt;
&amp;amp;gt;var_indicator=0;&lt;br /&gt;
break ;&lt;br /&gt;
}&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>