Fix for #73.
diff --git a/.gitignore b/.gitignore
index 259148f..0da26e3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,3 +30,4 @@
 *.exe
 *.out
 *.app
+TextEditor.cpp.bak
diff --git a/TextEditor.cpp b/TextEditor.cpp
index cddb6ca..3b5a07f 100644
--- a/TextEditor.cpp
+++ b/TextEditor.cpp
@@ -935,6 +935,9 @@
 				end.mColumn = (int)mLines[end.mLine].size();

 			}

 

+			if (end.mColumn >= (int)mLines[end.mLine].size())

+				end.mColumn = (int)mLines[end.mLine].size() - 1;

+

 			u.mRemovedStart = start;

 			u.mRemovedEnd = end;

 			u.mRemoved = GetText(start, end);

@@ -978,6 +981,8 @@
 

 			if (modified)

 			{

+				assert(mLines.size() > start.mLine && mLines[start.mLine].size() > start.mColumn);

+				assert(mLines.size() > end.mLine && mLines[end.mLine].size() > end.mColumn);

 				u.mAddedStart = start;

 				u.mAddedEnd = end;

 				u.mAdded = GetText(start, end);