aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/textadept/editing.lua8
1 files changed, 4 insertions, 4 deletions
diff --git a/modules/textadept/editing.lua b/modules/textadept/editing.lua
index ee8e3d70..a24347df 100644
--- a/modules/textadept/editing.lua
+++ b/modules/textadept/editing.lua
@@ -404,13 +404,13 @@ end
-- Selects all text with the same style as under the caret.
function select_scope()
local buffer = buffer
- local start_pos = buffer.current_pos
- local base_style = buffer.style_at[start_pos]
+ local start_pos, length = buffer.current_pos, buffer.length
+ local base_style, style_at = buffer.style_at[start_pos], buffer.style_at
local pos = start_pos - 1
- while buffer.style_at[pos] == base_style do pos = pos - 1 end
+ while pos >= 0 and style_at[pos] == base_style do pos = pos - 1 end
local start_style = pos
pos = start_pos + 1
- while buffer.style_at[pos] == base_style do pos = pos + 1 end
+ while pos < length and style_at[pos] == base_style do pos = pos + 1 end
buffer:set_sel(start_style + 1, pos)
end