X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fuistyle.cpp;h=dd2ed9612ebc669a2111bad813696ba2cafe004f;hp=05895cd154fd6b1003339602a89402a63533dca7;hb=55f8b0001cf7c26a05eac2d097aab2b06eface6d;hpb=9677b85469c276281b1bd0dbbb1e207dc92d4e57 diff --git a/src/uisupport/uistyle.cpp b/src/uisupport/uistyle.cpp index 05895cd1..dd2ed961 100644 --- a/src/uisupport/uistyle.cpp +++ b/src/uisupport/uistyle.cpp @@ -484,6 +484,7 @@ UiStyle::StyledString UiStyle::styleString(const QString &s_, quint32 baseFormat if(s[pos+1] == 'D') code += s[pos+2]; FormatType ftype = formatType(code); if(ftype == Invalid) { + pos++; qWarning() << (QString("Invalid format code in string: %1").arg(s)); continue; } @@ -503,6 +504,7 @@ UiStyle::StyledString UiStyle::styleString(const QString &s_, quint32 baseFormat QString UiStyle::mircToInternal(const QString &mirc_) { QString mirc = mirc_; mirc.replace('%', "%%"); // escape % just to be sure + mirc.replace('\t', " "); // tabs break layout, also this is italics in Konversation mirc.replace('\x02', "%B"); mirc.replace('\x0f', "%O"); mirc.replace('\x12', "%R"); @@ -562,7 +564,8 @@ void UiStyle::StyledMessage::style() const { QString bufferName = bufferInfo().bufferName(); bufferName.replace('%', "%%"); // well, you _can_ have a % in a buffername apparently... -_- host.replace('%', "%%"); // hostnames too... - user.replace('%', "%%"); // and the username. + user.replace('%', "%%"); // and the username... + nick.replace('%', "%%"); // ... and then there's totally RFC-violating servers like justin.tv m( const int maxNetsplitNicks = 15; QString t;