forked from mtcontrib/display_modpack
Rewrited split_lines to avoid a string.split bug if first line empty
This commit is contained in:
parent
b74407e11e
commit
1a50b59995
16
font.lua
16
font.lua
|
@ -55,17 +55,17 @@ local function char_to_codepoint(str)
|
|||
end
|
||||
|
||||
-- Split multiline text into array of lines, with <maxlines> maximum lines.
|
||||
-- Can not use minetest string.split as it has bug if first line(s) empty
|
||||
local function split_lines(text, maxlines)
|
||||
local splits = text:split("\n")
|
||||
if maxlines then
|
||||
local lines = {}
|
||||
for num = 1,maxlines do
|
||||
lines[num] = splits[num]
|
||||
end
|
||||
local pos = 1
|
||||
repeat
|
||||
local found = string.find(text, "\n", pos)
|
||||
found = found or #text + 1
|
||||
lines[#lines + 1] = string.sub(text, pos, found - 1)
|
||||
pos = found + 1
|
||||
until (maxlines and (#lines >= maxlines)) or (pos > (#text + 1))
|
||||
return lines
|
||||
else
|
||||
return splits
|
||||
end
|
||||
end
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
|
Loading…
Reference in New Issue
Block a user