diff options
-rw-r--r-- | lib/Language/TECO/Buffer.pm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Language/TECO/Buffer.pm b/lib/Language/TECO/Buffer.pm index 9ed6d44..bc0f7c8 100644 --- a/lib/Language/TECO/Buffer.pm +++ b/lib/Language/TECO/Buffer.pm @@ -34,8 +34,10 @@ sub delete { my $length = shift; if ($length < 0) { $length = -$length; - $self->{pointer} -= $length; + $self->offset(-$length); } + die "Pointer off page" + if $self->{pointer} + $length > length $self->{buffer}; substr($self->{buffer}, $self->{pointer}, $length) = ''; } |