Damn it's obvious - that's the reason kannel says 
"Device doesn't support charset <windows-1251> neither UTF-8"
while device supports utf-8

P.S. I think device_headers needs to be dwlist_destroyed, no?

-- 
Paul P 'Stingray' Komkoff Jr // http://stingr.net/key <- my pgp key
 This message represents the official view of the voices in my head
Index: gateway.C5/gw/wap-appl.c
===================================================================
--- gateway.C5.orig/gw/wap-appl.c       2005-02-28 13:36:24.222086760 +0300
+++ gateway.C5/gw/wap-appl.c    2005-02-28 13:44:28.395481216 +0300
@@ -731,7 +731,7 @@
     struct content content;
     int converted;
     WSPMachine *sm;
-    List *device_headers;
+    List *device_headers, *t_headers;
     WAPAddrTuple *addr_tuple;
     Octstr *ua, *server;
 
@@ -744,12 +744,17 @@
      * request be obviously will not find any session machine entry. */
     sm = find_session_machine_by_id(session_id);
 
+    device_headers = gwlist_create();
+
     /* ensure we pass only the original headers to the convertion routine */
-    device_headers = (orig_event->type == S_MethodInvoke_Ind) ?
+    t_headers = (orig_event->type == S_MethodInvoke_Ind) ?
+        orig_event->u.S_MethodInvoke_Ind.session_headers :
+        NULL;
+    if (t_headers != NULL) http_header_combine(device_headers, t_headers);
+    t_headers = (orig_event->type == S_MethodInvoke_Ind) ?
         orig_event->u.S_MethodInvoke_Ind.request_headers :
         orig_event->u.S_Unit_MethodInvoke_Ind.request_headers;
-    if (device_headers == NULL)
-        device_headers = gwlist_create();
+    if (t_headers != NULL) http_header_combine(device_headers, t_headers);
 
     /* 
      * We are acting as a proxy. Hence ensure we log a correct HTTP response
@@ -1056,6 +1061,7 @@
     octstr_destroy(content.type); /* body was re-used above */
     octstr_destroy(content.charset);
     octstr_destroy(url);          /* same as content.url */
+    gwlist_destroy(device_headers);
 
     counter_decrease(fetches);
 }

Reply via email to