aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2013-05-16 17:32:07 +0200
committerLoïc Hoguin <[email protected]>2013-05-16 17:32:07 +0200
commit08fcb38a1885da25166ae9520decdba910b39fc2 (patch)
treed883b5cfc67b2b2f98cfd92843178fff85ed25fc
parent1d413ea51b29de270a737de4c97fcdd8656541ce (diff)
downloadcowboy-08fcb38a1885da25166ae9520decdba910b39fc2.tar.gz
cowboy-08fcb38a1885da25166ae9520decdba910b39fc2.tar.bz2
cowboy-08fcb38a1885da25166ae9520decdba910b39fc2.zip
charsets_provided/2 returns a list of charsets
It incorrectly returned a tuple containing the charset and an associated quality which wasn't being used.
-rw-r--r--src/cowboy_rest.erl7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/cowboy_rest.erl b/src/cowboy_rest.erl
index 494a1e3..da3b1b5 100644
--- a/src/cowboy_rest.erl
+++ b/src/cowboy_rest.erl
@@ -45,7 +45,7 @@
language_a :: undefined | binary(),
%% Charset.
- charsets_p = [] :: [{binary(), integer()}],
+ charsets_p = [] :: [binary()],
charset_a :: undefined | binary(),
%% Whether the resource exists.
@@ -406,8 +406,7 @@ charsets_provided(Req, State) ->
cowboy_req:parse_header(<<"accept-charset">>, Req2),
case AcceptCharset of
undefined ->
- set_content_type(Req3, State2#state{
- charset_a=element(1, hd(CP))});
+ set_content_type(Req3, State2#state{charset_a=hd(CP)});
AcceptCharset ->
AcceptCharset2 = prioritize_charsets(AcceptCharset),
choose_charset(Req3, State2, AcceptCharset2)
@@ -437,7 +436,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).