[
https://issues.apache.org/jira/browse/AXIS2C-1548?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robert Lazarski resolved AXIS2C-1548.
-------------------------------------
Fix Version/s: 2.0.0
Resolution: Fixed
The new native wsdl2c-native tool doesn't generate this code pattern. This
is purely an obsolete Java-based WSDL2C issue.
> WSDL2C generates improper code
> -------------------------------
>
> Key: AXIS2C-1548
> URL: https://issues.apache.org/jira/browse/AXIS2C-1548
> Project: Axis2-C
> Issue Type: Bug
> Components: code generation
> Reporter: Janusz Pulit
> Priority: Minor
> Fix For: 2.0.0
>
>
> Stub generated by WSDL2C contains bug, in generated code we can see something
> like:
>
> soap_act = axis2_options_get_soap_action( options, env );
>
> if (NULL == soap_act)
> {
> is_soap_act_set = AXIS2_FALSE;
> soap_action = "http://dummy/SampleService/dummyRequest";
> soap_act = axutil_string_create(env,
> "http://dummy/SampleService/dummyRequest");
> axis2_options_set_soap_action(options, env, soap_act);
> }
>
> axis2_options_set_soap_version(options, env, AXIOM_SOAP11);
>
> ret_node = axis2_svc_client_send_receive_with_op_qname(
> svc_client, env, op_qname, payload);
> if (!is_soap_act_set)
> {
> axis2_options_set_soap_action(options, env, NULL);
> axis2_options_set_action( options, env, NULL);
> }
>
> if(soap_act)
> {
> axutil_string_free(soap_act, env);
> }
> The problem is that soap_act string should be freed only in case if it wasn't
> retrieved from options, and was created with axutil_string_create() call
> If soap_action parameter will be set in options, existing implementation will
> retrieve that string with axis2_options_get_soap_action() call, and then free
> it, each next subsequent call will cause crash (because it will try to
> release already freed memory)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]