From: Badlop Date: Thu, 2 Aug 2018 16:36:41 +0000 (+0200) Subject: Handle ejabberd_captcha error reports in mod_register_web (#2553) X-Git-Tag: 18.09~71 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c9ba0e83d28866f3b2cd47291b3e403e3ad2eadc;p=ejabberd Handle ejabberd_captcha error reports in mod_register_web (#2553) --- diff --git a/src/mod_register_web.erl b/src/mod_register_web.erl index 7bda0e67d..ae659ddc8 100644 --- a/src/mod_register_web.erl +++ b/src/mod_register_web.erl @@ -222,7 +222,16 @@ index_page(Lang) -> %%%---------------------------------------------------------------------- form_new_get(Host, Lang, IP) -> - CaptchaEls = build_captcha_li_list(Lang, IP), + try build_captcha_li_list(Lang, IP) of + CaptchaEls -> + form_new_get2(Host, Lang, CaptchaEls) + catch + throw:Result -> + ?DEBUG("Unexpected result when creating a captcha: ~p", [Result]), + ejabberd_web:error(not_allowed) + end. + +form_new_get2(Host, Lang, CaptchaEls) -> HeadEls = [meta(), ?XCT(<<"title">>, <<"Register a Jabber account">>), @@ -360,7 +369,7 @@ build_captcha_li_list2(Lang, IP) -> ejabberd_captcha:build_captcha_html(Id, Lang), [?XE(<<"li">>, [CText, ?C(<<" ">>), CId, CKey, ?BR, CImg])]; - _ -> [] + Error -> throw(Error) end. %%%----------------------------------------------------------------------