mirror of
https://github.com/TangentFoxy/etlua.git
synced 2025-07-28 11:02:17 +00:00
don't use coroutine to yield template code (fixes issue in lapis)
This commit is contained in:
14
etlua.lua
14
etlua.lua
@@ -204,9 +204,17 @@ do
|
|||||||
if name == nil then
|
if name == nil then
|
||||||
name = "etlua"
|
name = "etlua"
|
||||||
end
|
end
|
||||||
local code_fn = coroutine.wrap(function()
|
local code_fn
|
||||||
return coroutine.yield(code)
|
do
|
||||||
end)
|
local code_ref = code
|
||||||
|
code_fn = function()
|
||||||
|
do
|
||||||
|
local ret = code_ref
|
||||||
|
code_ref = nil
|
||||||
|
return ret
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
local fn, err = load(code_fn, name)
|
local fn, err = load(code_fn, name)
|
||||||
if not (fn) then
|
if not (fn) then
|
||||||
do
|
do
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
VERSION = "1.0.1"
|
VERSION = "1.0.2"
|
||||||
|
|
||||||
import insert, concat from table
|
import insert, concat from table
|
||||||
|
|
||||||
@@ -163,8 +163,11 @@ class Parser
|
|||||||
"#{err_msg} [#{source_line_no}]: #{source_line}"
|
"#{err_msg} [#{source_line_no}]: #{source_line}"
|
||||||
|
|
||||||
load: (code, name="etlua") =>
|
load: (code, name="etlua") =>
|
||||||
code_fn = coroutine.wrap ->
|
code_fn = do
|
||||||
coroutine.yield code
|
code_ref = code
|
||||||
|
->
|
||||||
|
with ret = code_ref
|
||||||
|
code_ref = nil
|
||||||
|
|
||||||
fn, err = load code_fn, name
|
fn, err = load code_fn, name
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user