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 na...@apache.org on 2007/10/30 10:44:50 UTC

svn commit: r590007 - /webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c

Author: nandika
Date: Tue Oct 30 02:44:50 2007
New Revision: 590007

URL: http://svn.apache.org/viewvc?rev=590007&view=rev
Log:
fix bug in mime processing, url decoding is done when extracting content id

Modified:
    webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c

Modified: webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c?rev=590007&r1=590006&r2=590007&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c (original)
+++ webservices/axis2/trunk/c/axiom/src/soap/soap_builder.c Tue Oct 30 02:44:50 2007
@@ -452,13 +452,21 @@
                             {
                                 axiom_data_handler_t *data_handler = NULL;
                                 id += 4;
+
                                 if (soap_builder->mime_body_parts)
                                 {
+
+                                    axis2_char_t *id_decoded = NULL;
+                                  
+                                    id_decoded = axutil_strdup(env, id);
+                                    
+                                    axutil_url_decode(env, id_decoded, id_decoded);
+                                    
                                     data_handler =
                                         (axiom_data_handler_t *)
                                         axutil_hash_get(soap_builder->
                                                         mime_body_parts,
-                                                        (void *) id,
+                                                        (void *) id_decoded,
                                                         AXIS2_HASH_KEY_STRING);
                                     if (data_handler)
                                     {
@@ -474,7 +482,7 @@
                                              &data_om_node);
 
                                         axiom_text_set_content_id(data_text,
-                                                                  env, id);
+                                                                  env, id_decoded);
                                         axiom_stax_builder_set_lastnode
                                             (soap_builder->om_builder, env,
                                              parent);
@@ -482,6 +490,8 @@
                                                              env);
 
                                     }
+                                    if(id_decoded)
+                                        AXIS2_FREE(env->allocator, id_decoded);
                                 }
                             }
                         }



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org