diff --git a/src/server/forum_user_handler.cpp b/src/server/forum_user_handler.cpp index 8c0abf7af4d2..e282fb804f14 100644 --- a/src/server/forum_user_handler.cpp +++ b/src/server/forum_user_handler.cpp @@ -182,9 +182,14 @@ fuh::BAN_TYPE fuh::user_is_banned(const std::string& name, const std::string& ad // for the time being. // - if(!addr.empty() && prepared_statement("SELECT 1 FROM `" + db_banlist_table_ + "` WHERE UPPER(ban_ip) = UPPER(?) AND ban_exclude = 0", addr)) { - LOG_UH << "User '" << name << "' ip " << addr << " banned by IP address\n"; - return BAN_IP; + try { + if(!addr.empty() && prepared_statement("SELECT 1 FROM `" + db_banlist_table_ + "` WHERE UPPER(ban_ip) = UPPER(?) AND ban_exclude = 0", addr)) { + LOG_UH << "User '" << name << "' ip " << addr << " banned by IP address\n"; + return BAN_IP; + } + } catch(const sql_error& e) { + ERR_UH << "Could not check forum bans on address '" << addr << "' :" << e.message << '\n'; + return BAN_NONE; } if(!user_exists(name)) return BAN_NONE;