You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ma...@apache.org on 2007/06/05 14:44:02 UTC
svn commit: r544473 - in /webservices/axis2/trunk/c/neethi:
include/neethi_operator.h src/engine.c src/operator.c
Author: manjula
Date: Tue Jun 5 05:44:01 2007
New Revision: 544473
URL: http://svn.apache.org/viewvc?view=rev&rev=544473
Log:
Fixing some memory leaks due to neethi_operator create.
Modified:
webservices/axis2/trunk/c/neethi/include/neethi_operator.h
webservices/axis2/trunk/c/neethi/src/engine.c
webservices/axis2/trunk/c/neethi/src/operator.c
Modified: webservices/axis2/trunk/c/neethi/include/neethi_operator.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/neethi/include/neethi_operator.h?view=diff&rev=544473&r1=544472&r2=544473
==============================================================================
--- webservices/axis2/trunk/c/neethi/include/neethi_operator.h (original)
+++ webservices/axis2/trunk/c/neethi/include/neethi_operator.h Tue Jun 5 05:44:01 2007
@@ -74,6 +74,11 @@
neethi_operator_t *neethi_operator,
const axutil_env_t *env,
axiom_node_t *parent);
+
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ neethi_operator_set_value_null(
+ neethi_operator_t *neethi_operator,
+ const axutil_env_t *env);
Modified: webservices/axis2/trunk/c/neethi/src/engine.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/neethi/src/engine.c?view=diff&rev=544473&r1=544472&r2=544473
==============================================================================
--- webservices/axis2/trunk/c/neethi/src/engine.c (original)
+++ webservices/axis2/trunk/c/neethi/src/engine.c Tue Jun 5 05:44:01 2007
@@ -119,6 +119,11 @@
neethi_operator_set_value(neethi_operator,env,all,OPERATOR_TYPE_ALL);
process_operation_element(env,neethi_operator,node,element);
+ neethi_operator_set_value_null(neethi_operator, env);
+
+ neethi_operator_free(neethi_operator, env);
+ neethi_operator = NULL;
+
return all;
}
@@ -144,6 +149,11 @@
neethi_operator_set_value(neethi_operator,env,exactlyone,OPERATOR_TYPE_EXACTLYONE);
process_operation_element(env,neethi_operator,node,element);
+ neethi_operator_set_value_null(neethi_operator, env);
+
+ neethi_operator_free(neethi_operator, env);
+ neethi_operator = NULL;
+
return exactlyone;
}
@@ -199,7 +209,12 @@
return NULL;
}
neethi_operator_set_value(neethi_operator,env,neethi_policy,OPERATOR_TYPE_POLICY);
- process_operation_element(env,neethi_operator,node,element);
+ process_operation_element(env,neethi_operator,node,element);
+
+ neethi_operator_set_value_null(neethi_operator, env);
+
+ neethi_operator_free(neethi_operator, env);
+ neethi_operator = NULL;
return neethi_policy;
}
@@ -323,7 +338,6 @@
operator = neethi_operator_create(env);
neethi_operator_set_value(operator, env, assertion, OPERATOR_TYPE_ASSERTION);
neethi_engine_add_policy_component(env,neethi_operator,operator);
-
}
}
}
@@ -466,6 +480,11 @@
neethi_operator_set_value(operator,env,neethi_policy,OPERATOR_TYPE_POLICY);
exactlyone = normalize_operator(operator,registry,deep,env);
+
+ neethi_operator_set_value_null(operator, env);
+
+ neethi_operator_free(operator, env);
+ operator = NULL;
if(exactlyone)
{
Modified: webservices/axis2/trunk/c/neethi/src/operator.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/neethi/src/operator.c?view=diff&rev=544473&r1=544472&r2=544473
==============================================================================
--- webservices/axis2/trunk/c/neethi/src/operator.c (original)
+++ webservices/axis2/trunk/c/neethi/src/operator.c Tue Jun 5 05:44:01 2007
@@ -92,8 +92,9 @@
case OPERATOR_TYPE_UNKNOWN:
break;
}
- AXIS2_FREE(env->allocator,neethi_operator->value);
- }
+ /*AXIS2_FREE(env->allocator,neethi_operator->value);*/
+ }
+ AXIS2_FREE(env->allocator, neethi_operator);
}
return;
}
@@ -190,3 +191,13 @@
}
else return AXIS2_FAILURE;
}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+neethi_operator_set_value_null(
+ neethi_operator_t *neethi_operator,
+ const axutil_env_t *env)
+{
+ neethi_operator->value = NULL;
+ return AXIS2_SUCCESS;
+}
+
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org