Hans Leidekker : webservices: Use a table in get_header_name.

Alexandre Julliard julliard at winehq.org
Wed Mar 29 15:02:51 CDT 2017


Module: wine
Branch: master
Commit: bdbab7b63a46d1a1689ba447196ee09734cc3349
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=bdbab7b63a46d1a1689ba447196ee09734cc3349

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Wed Mar 29 11:14:44 2017 +0200

webservices: Use a table in get_header_name.

Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/webservices/msg.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/dlls/webservices/msg.c b/dlls/webservices/msg.c
index 5e425ee..d15ab85 100644
--- a/dlls/webservices/msg.c
+++ b/dlls/webservices/msg.c
@@ -457,24 +457,24 @@ static HRESULT get_addr_namespace( WS_ADDRESSING_VERSION ver, WS_XML_STRING *str
 
 static const WS_XML_STRING *get_header_name( WS_HEADER_TYPE type )
 {
-    static const WS_XML_STRING action = {6, (BYTE *)"Action"}, to = {2, (BYTE *)"To"};
-    static const WS_XML_STRING msgid = {9, (BYTE *)"MessageID"}, relto = {9, (BYTE *)"RelatesTo"};
-    static const WS_XML_STRING from = {4, (BYTE *)"From"}, replyto = {7, (BYTE *)"ReplyTo"};
-    static const WS_XML_STRING faultto = {7, (BYTE *)"FaultTo"};
+    static const WS_XML_STRING headers[] =
+    {
+        {6, (BYTE *)"Action"},
+        {2, (BYTE *)"To"},
+        {9, (BYTE *)"MessageID"},
+        {9, (BYTE *)"RelatesTo"},
+        {4, (BYTE *)"From"},
+        {7, (BYTE *)"ReplyTo"},
+        {7, (BYTE *)"FaultTo"},
+    };
 
-    switch (type)
+    if (type < WS_ACTION_HEADER || type > WS_FAULT_TO_HEADER)
     {
-    case WS_ACTION_HEADER:      return &action;
-    case WS_TO_HEADER:          return &to;
-    case WS_MESSAGE_ID_HEADER:  return &msgid;
-    case WS_RELATES_TO_HEADER:  return &relto;
-    case WS_FROM_HEADER:        return &from;
-    case WS_REPLY_TO_HEADER:    return &replyto;
-    case WS_FAULT_TO_HEADER:    return &faultto;
-    default:
         ERR( "unknown type %u\n", type );
         return NULL;
     }
+
+    return &headers[type - 1];
 }
 
 static HRESULT write_headers( struct msg *msg, const WS_XML_STRING *ns_env, const WS_XML_STRING *ns_addr,




More information about the wine-cvs mailing list