aboutsummaryrefslogtreecommitdiff
path: root/src/lua/modules/time/je_lua_timer.cpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-11-15 21:44:02 +0800
committerchai <chaifix@163.com>2018-11-15 21:44:02 +0800
commite654344bc262c8393559e5cd535f440133fb2406 (patch)
tree7ac96581726c7d81599d72fdd811b5d991e2e362 /src/lua/modules/time/je_lua_timer.cpp
parent7e51ff3bfae0becc260452a427a1fc1232a4b348 (diff)
*渲染矩阵
Diffstat (limited to 'src/lua/modules/time/je_lua_timer.cpp')
-rw-r--r--src/lua/modules/time/je_lua_timer.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/lua/modules/time/je_lua_timer.cpp b/src/lua/modules/time/je_lua_timer.cpp
index 9104a42..540f205 100644
--- a/src/lua/modules/time/je_lua_timer.cpp
+++ b/src/lua/modules/time/je_lua_timer.cpp
@@ -47,7 +47,9 @@ namespace JinEngine
func->pushParam(i);
Timer::Handler* handler = timer->every(s, timerCallback, func, finishCallback);
Proxy* proxy = luax_newinstance(L, Jin_Lua_Handler);
- proxy->bind(new Shared<Timer::Handler>(handler, Jin_Lua_Handler));
+ Shared<Timer::Handler>* shrHandler = new Shared<Timer::Handler>(handler, Jin_Lua_Handler);
+ shrHandler->retain();
+ proxy->bind(shrHandler);
return 1;
}
@@ -64,7 +66,9 @@ namespace JinEngine
func->pushParam(i);
Timer::Handler* handler = timer->after(s, timerCallback, func, finishCallback);
Proxy* proxy = luax_newinstance(L, Jin_Lua_Handler);
- proxy->bind(new Shared<Timer::Handler>(handler, Jin_Lua_Handler));
+ Shared<Timer::Handler>* shrHandler = new Shared<Timer::Handler>(handler, Jin_Lua_Handler);
+ shrHandler->retain();
+ proxy->bind(shrHandler);
return 1;
}
@@ -82,7 +86,9 @@ namespace JinEngine
func->pushParam(i);
Timer::Handler* handler = timer->repeat(s, count, timerCallback, func, finishCallback);
Proxy* proxy = luax_newinstance(L, Jin_Lua_Handler);
- proxy->bind(new Shared<Timer::Handler>(handler, Jin_Lua_Handler));
+ Shared<Timer::Handler>* shrHandler = new Shared<Timer::Handler>(handler, Jin_Lua_Handler);
+ shrHandler->retain();
+ proxy->bind(shrHandler);
return 1;
}