You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by hi...@apache.org on 2009/10/06 12:01:15 UTC
svn commit: r822182 -
/harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c
Author: hindessm
Date: Tue Oct 6 10:01:14 2009
New Revision: 822182
URL: http://svn.apache.org/viewvc?rev=822182&view=rev
Log:
Avoid growing stack frame by deleting local references.
Modified:
harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c?rev=822182&r1=822181&r2=822182&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/native/luni/shared/netif.c Tue Oct 6 10:01:14 2009
@@ -138,6 +138,7 @@
{
return NULL;
}
+ (*env)->DeleteLocalRef(env, bytearray);
}
if (networkInterfaceArray.elements[j].displayName != NULL)
@@ -159,6 +160,7 @@
{
return NULL;
}
+ (*env)->DeleteLocalRef(env, bytearray);
}
/* generate the object with the inet addresses for the interface */
@@ -194,6 +196,9 @@
displayName, addresses,
networkInterfaceArray.elements[j].index);
+ (*env)->DeleteLocalRef(env, name);
+ (*env)->DeleteLocalRef(env, addresses);
+
if (j == 0)
{
networkInterfaces =
@@ -205,6 +210,9 @@
(*env)->SetObjectArrayElement (env, networkInterfaces, j,
currentInterface);
}
+
+ (*env)->DeleteLocalRef(env, currentInterface);
+
}
/* free the memory for the interfaces struct and return the new NetworkInterface List */