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 cb...@apache.org on 2005/03/01 00:21:39 UTC
cvs commit: ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal BeanParamWriter.java
cblecken 2005/02/28 15:21:39
Modified: c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal
BeanParamWriter.java
Log:
Fix for AXISCPP-480. Do an explicit NULL check before a simple type is assigned
to prevent access violations. Doing this in the stub seems the least risky
way right now.
PR: AXISCPP-480
Submitted by: cblecken
Reviewed by: S.Cherukuri
Revision Changes Path
1.54 +3 -1 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/BeanParamWriter.java
Index: BeanParamWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/BeanParamWriter.java,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- BeanParamWriter.java 22 Feb 2005 17:48:57 -0000 1.53
+++ BeanParamWriter.java 28 Feb 2005 23:21:39 -0000 1.54
@@ -396,7 +396,9 @@
}
else
{
- writer.write("\tparam->"+attribs[i].getParamNameAsMember()+" = *(pIWSDZ->"+CUtils.getParameterGetValueMethodName(attribs[i].getTypeName(), attribs[i].isAttribute())+"( \""+ soapTagName +"\",0));\n");
+ writer.write("\t" + attribs[i].getTypeName() + " * " + attribs[i].getParamNameAsMember()+ " = NULL;\n");
+ writer.write("\tif ((" + attribs[i].getParamNameAsMember()+ " = pIWSDZ->"+CUtils.getParameterGetValueMethodName(attribs[i].getTypeName(), attribs[i].isAttribute())+"( \""+ soapTagName +"\",0)) != NULL)\n");
+ writer.write("\t\tparam->"+attribs[i].getParamNameAsMember()+" = *( " + attribs[i].getParamNameAsMember()+" );\n");
}
}
else