aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/src/base64.erl
diff options
context:
space:
mode:
authorHans Bolinder <[email protected]>2017-11-08 12:41:23 +0100
committerHans Bolinder <[email protected]>2017-11-28 13:03:46 +0100
commit2ead5d429fe87ffedf0134d918c3b404e9fa70fe (patch)
tree16b677eafefde736d7c17307d7ec5f6979c8edc0 /lib/stdlib/src/base64.erl
parentf3756139b99a77a29dd7325d0b2d706eed8a881f (diff)
downloadotp-2ead5d429fe87ffedf0134d918c3b404e9fa70fe.tar.gz
otp-2ead5d429fe87ffedf0134d918c3b404e9fa70fe.tar.bz2
otp-2ead5d429fe87ffedf0134d918c3b404e9fa70fe.zip
stdlib: Do not check base64 input more than needed
Often the decode functions return a function_clause error, but not always, and the errors have not been consistent between modifications of the base64 module. Now the errors are returned as they happen--no attempt to make them look nice is done. The alternative, to ensure that, for example, {badarg, Culprit} is always returned upon bad input, was deemed pointless.
Diffstat (limited to 'lib/stdlib/src/base64.erl')
-rw-r--r--lib/stdlib/src/base64.erl6
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/stdlib/src/base64.erl b/lib/stdlib/src/base64.erl
index b4ff7b037f..6ea4147abf 100644
--- a/lib/stdlib/src/base64.erl
+++ b/lib/stdlib/src/base64.erl
@@ -383,8 +383,7 @@ only_ws_binary(<<>>, A) ->
A;
only_ws_binary(<<C:8, Cs/bits>>, A) ->
case b64d(C) of
- ws -> only_ws_binary(Cs, A);
- _ -> erlang:error(function_clause)
+ ws -> only_ws_binary(Cs, A)
end.
decode_list_to_string([C1 | Cs]) ->
@@ -427,8 +426,7 @@ only_ws([], A) ->
A;
only_ws([C | Cs], A) ->
case b64d(C) of
- ws -> only_ws(Cs, A);
- _ -> erlang:error(function_clause)
+ ws -> only_ws(Cs, A)
end.
%%%========================================================================