0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-16 05:00:24 +00:00

Fix charset not working properly for REST

This commit is contained in:
Loïc Hoguin 2012-12-11 00:05:42 +01:00
parent 6d4e15705f
commit 08a4975c34

View file

@ -40,7 +40,7 @@
language_a :: undefined | binary(),
%% Charset.
charsets_p = [] :: [binary()],
charsets_p = [] :: [{binary(), integer()}],
charset_a :: undefined | binary(),
%% Cached resource calls.
@ -373,7 +373,7 @@ charsets_provided(Req, State) ->
case AcceptCharset of
undefined ->
set_content_type(Req3, State2#state{
charset_a=hd(CP)});
charset_a=element(1, hd(CP))});
AcceptCharset ->
AcceptCharset2 = prioritize_charsets(AcceptCharset),
choose_charset(Req3, State2, AcceptCharset2)
@ -403,7 +403,7 @@ choose_charset(Req, State=#state{charsets_p=CP}, [Charset|Tail]) ->
match_charset(Req, State, Accept, [], _Charset) ->
choose_charset(Req, State, Accept);
match_charset(Req, State, _Accept, [Provided|_], {Provided, _}) ->
match_charset(Req, State, _Accept, [{Provided, _}|_], {Provided, _}) ->
set_content_type(Req, State#state{charset_a=Provided});
match_charset(Req, State, Accept, [_|Tail], Charset) ->
match_charset(Req, State, Accept, Tail, Charset).