diff --git a/CHANGELOG.mkdn b/CHANGELOG.mkdn
index 72598ce..e8b5867 100644
--- a/CHANGELOG.mkdn
+++ b/CHANGELOG.mkdn
@@ -54,6 +54,7 @@ CHANGELOG
* Don't split messages in bad places - Kiooeht [evacipatedBox]
* Chumhandles must match EXACTLY to register mood changes - Kiooeht [evacipatedBox]
* Menu bar text colour correct when default system colour isn't black - Kiooeht [evacipatedBox]
+ * End all colour tags and restart them on split messages - Kiooeht [evacipatedBox]
### 3.14.1
* Pesterchum 3.14 - illuminatedwax [ghostDunk]
diff --git a/TODO.mkdn b/TODO.mkdn
index 02bb75e..6db272d 100644
--- a/TODO.mkdn
+++ b/TODO.mkdn
@@ -21,6 +21,7 @@ Bugs
* When left for a really long time, animations slow down pesterchum
* Openning userlist resets appearance of OP/voice for anyone that become OP/voice after you joined a memo
* Windows: Dragging a chum on top of another chum and releasing makes one disappear
+* If pesterchum is open but offline due to a network failure and you open the memos screen, it connects you but doesn't fetch the memo list when it finishes connecting
Mac Bugs
--------
diff --git a/irc.py b/irc.py
index aa55657..c84e0ca 100644
--- a/irc.py
+++ b/irc.py
@@ -110,6 +110,27 @@ class PesterIRC(QtCore.QThread):
space = space+4
a = l[0][0:space+1]
b = l[0][space+1:]
+ if a.count(" a.count(""):
+ # oh god ctags will break!! D=
+ hanging = []
+ usedends = []
+ c = a.rfind("", c)
+ while d in usedends:
+ d = a.find("", d+1)
+ if d != -1: usedends.append(d)
+ else:
+ f = a.find(">", c)+1
+ hanging.append(a[c:f])
+ c = a.rfind("")):
+ a = a + ""
+ #start them up again in the second part
+ for c in hanging:
+ b = c + b
if len(b) > 0:
return [a] + splittext([b])
else: