Sanitize inputs to insert and remove

This commit is contained in:
Zachary Yedidia
2020-02-10 00:18:08 -05:00
parent 57a992c4a3
commit 3ed77dbb2e

View File

@@ -117,6 +117,7 @@ func (eh *EventHandler) Insert(start Loc, textStr string) {
// InsertBytes creates an insert text event and executes it
func (eh *EventHandler) InsertBytes(start Loc, text []byte) {
start = clamp(start, eh.buf.LineArray)
e := &TextEvent{
C: *eh.cursors[eh.active],
EventType: TextEventInsert,
@@ -167,6 +168,8 @@ func (eh *EventHandler) InsertBytes(start Loc, text []byte) {
// Remove creates a remove text event and executes it
func (eh *EventHandler) Remove(start, end Loc) {
start = clamp(start, eh.buf.LineArray)
end = clamp(end, eh.buf.LineArray)
e := &TextEvent{
C: *eh.cursors[eh.active],
EventType: TextEventRemove,