0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 00:32:35 +01:00

ircd: Tweak client error handling; fwddecl json::expectation_failure.

This commit is contained in:
Jason Volk 2018-03-08 07:40:41 -08:00
parent 4dd97298f5
commit 8c02823d49
4 changed files with 11 additions and 11 deletions

View file

@ -21,6 +21,7 @@ namespace ircd::json
IRCD_EXCEPTION(error, type_error);
IRCD_EXCEPTION(error, not_found);
IRCD_EXCEPTION(parse_error, recursion_limit);
struct expectation_failure;
struct value;
struct member;

View file

@ -572,18 +572,19 @@ catch(const boost::system::system_error &e)
close(net::dc::RST, net::close_ignore);
return false;
}
#ifndef RB_DEBUG
catch(const std::exception &e)
{
log::error("client[%s] [500 Internal Error]: %s",
log::error
{
"client[%s] [500 Internal Error]: %s"
string(remote(*this)),
e.what());
e.what())
};
#ifdef RB_DEBUG
throw;
#else
return false;
#endif
}
#endif
/// Handle a single request within the client main() loop.
///

View file

@ -42,8 +42,6 @@ namespace ircd::json
using karma::eps;
using karma::attr_cast;
struct expectation_failure;
template<class it> struct input;
template<class it> struct output;

View file

@ -321,7 +321,7 @@ catch(const json::not_found &e)
{
throw m::error
{
http::BAD_REQUEST, "M_BAD_JSON", "Required JSON field: %s", e.what()
http::NOT_FOUND, "M_BAD_JSON", "Required JSON field: %s", e.what()
};
}
catch(const json::print_error &e)