summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Donohue <git@PaulSD.com>2013-05-24 14:29:41 -0400
committerPaul Donohue <git@PaulSD.com>2013-05-24 14:29:41 -0400
commit089c664bad20ca39e4ee817bdc24bce196404332 (patch)
tree5fe0000c583fc71d7d2b21b876b9c49e1ec9af0e /src
parentMerge pull request #67 from anton-ryzhov/config_example (diff)
Fix a bug when reading tuples from config
If the config contains a tuple of integers (for example, if a bind IP address is specified) then strings_to_binary() calls tuple_to_list() followed by strings_to_binary(), which then calls list_to_binary() because the list looks like a string. Then list_to_tuple() is called on the returned binary, causing a crash. This patch corrects the problem by calling strings_to_binary1() instead, which ensures that the value that is passed into list_to_tuple() is a list.
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_config.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ejabberd_config.erl b/src/ejabberd_config.erl
index 0a4208b7..269b0a89 100644
--- a/src/ejabberd_config.erl
+++ b/src/ejabberd_config.erl
@@ -720,7 +720,7 @@ strings_to_binary(L) when is_list(L) ->
strings_to_binary1(L)
end;
strings_to_binary(T) when is_tuple(T) ->
- list_to_tuple(strings_to_binary(tuple_to_list(T)));
+ list_to_tuple(strings_to_binary1(tuple_to_list(T)));
strings_to_binary(X) ->
X.