You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2006/03/27 07:51:34 UTC

svn commit: r389023 - /webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c

Author: samisa
Date: Sun Mar 26 21:51:31 2006
New Revision: 389023

URL: http://svn.apache.org/viewcvs?rev=389023&view=rev
Log:
Fixed for one way case

Modified:
    webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c

Modified: webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c?rev=389023&r1=389022&r2=389023&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c (original)
+++ webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c Sun Mar 26 21:51:31 2006
@@ -419,8 +419,13 @@
     {
         AXIS2_MSG_CTX_FREE(out_msg_ctx, env);
         return AXIS2_FAILURE;
-    }        
-    status = AXIS2_ENGINE_SEND(engine, env, out_msg_ctx);
+    }       
+    if (AXIS2_MSG_CTX_GET_SOAP_ENVELOPE(out_msg_ctx, env) || AXIS2_ERROR_GET_STATUS_CODE((*env)->error) != AXIS2_SUCCESS )
+    {
+        /* if it is two way or if there is a fault then send through engine.
+           if it is one way we do not need to do an engine send */
+        status = AXIS2_ENGINE_SEND(engine, env, out_msg_ctx);
+    }
     AXIS2_ENGINE_FREE(engine, env);
     axis2_core_utils_reset_out_msg_ctx(env, out_msg_ctx);
     AXIS2_MSG_CTX_FREE(out_msg_ctx, env);