Modified:
branches/RB-0.2/lib/ewgi/include/ewgi.hrl
branches/RB-0.2/lib/ewgi/src/ewgi_api.erl
branches/RB-0.2/lib/ewgi/src/ewgi_mochiweb.erl
Log:
Fixed header behaviour to comply with spec
Modified: branches/RB-0.2/lib/ewgi/include/ewgi.hrl
==============================================================================
--- branches/RB-0.2/lib/ewgi/include/ewgi.hrl (original)
+++ branches/RB-0.2/lib/ewgi/include/ewgi.hrl Thu Nov 20 12:48:15 2008
@@ -75,7 +75,7 @@
%%%-type ewgi_ri_callback() :: fun(('eof' | {data, binary()}) -> iolist()
| ewgi_ri_callback()).
%% @type ewgi_ri_callback() = function()
-type ewgi_ri_callback() :: fun(('eof' | {data, binary()}) -> iolist() |
function()) | iolist().
-
+
%% @type ewgi_read_input() = function()
-type ewgi_read_input() :: fun((ewgi_ri_callback(), integer()) ->
ewgi_ri_callback()).
Modified: branches/RB-0.2/lib/ewgi/src/ewgi_api.erl
==============================================================================
--- branches/RB-0.2/lib/ewgi/src/ewgi_api.erl (original)
+++ branches/RB-0.2/lib/ewgi/src/ewgi_api.erl Thu Nov 20 12:48:15 2008
@@ -229,8 +229,9 @@
V;
get_header1(Hdr,
#ewgi_context{request=#ewgi_request{http_headers=#ewgi_http_headers{other=D}}})
->
case gb_trees:lookup(Hdr, D) of
- {value, V} ->
- V;
+ {value, V} when is_list(V) ->
+ {_, V1} = lists:unzip(V),
+ string:join(V1, ", ");
none ->
undefined
end.
Modified: branches/RB-0.2/lib/ewgi/src/ewgi_mochiweb.erl
==============================================================================
--- branches/RB-0.2/lib/ewgi/src/ewgi_mochiweb.erl (original)
+++ branches/RB-0.2/lib/ewgi/src/ewgi_mochiweb.erl Thu Nov 20 12:48:15 2008
@@ -277,13 +277,13 @@
; K =:= "x-http-method-override" ->
Acc;
_ ->
- Ex = case gb_trees:lookup(K0, Acc) of
+ Ex = case gb_trees:lookup(K, Acc) of
{value, L} ->
L;
none ->
[]
end,
- gb_trees:insert(K0, [V|Ex], Acc)
+ gb_trees:insert(K, [{K0, V}|Ex], Acc)
end
end, gb_trees:empty(),
mochiweb_headers:to_list(Req:get(headers)));