diff --git a/src/messages/MessageElement.cpp b/src/messages/MessageElement.cpp index 907bcc54..31bfe816 100644 --- a/src/messages/MessageElement.cpp +++ b/src/messages/MessageElement.cpp @@ -197,6 +197,8 @@ TextElement::TextElement(const QString &text, MessageElementFlags flags, , color_(color) , style_(style) { + assert(text != "authentication"); + for (const auto &word : text.split(' ')) { this->words_.push_back({word, -1}); diff --git a/src/providers/twitch/IrcMessageHandler.cpp b/src/providers/twitch/IrcMessageHandler.cpp index e8cb71f1..eab95b65 100644 --- a/src/providers/twitch/IrcMessageHandler.cpp +++ b/src/providers/twitch/IrcMessageHandler.cpp @@ -516,12 +516,21 @@ void IrcMessageHandler::handleModeMessage(Communi::IrcMessage *message) std::vector IrcMessageHandler::parseNoticeMessage( Communi::IrcNoticeMessage *message) { - std::vector builtMessages; + if (message->content().startsWith("Login auth", Qt::CaseInsensitive)) + { + return {MessageBuilder(systemMessage, + "Login expired! Try logging in again.") + .release()}; + } + else + { + std::vector builtMessages; - builtMessages.emplace_back(makeSystemMessage(message->content())); + builtMessages.emplace_back(makeSystemMessage(message->content())); - return builtMessages; -} + return builtMessages; + } +} // namespace chatterino void IrcMessageHandler::handleNoticeMessage(Communi::IrcNoticeMessage *message) {