summaryrefslogtreecommitdiff
path: root/source/libs/asura-lib-utils/io/io_task.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/libs/asura-lib-utils/io/io_task.cpp')
-rw-r--r--source/libs/asura-lib-utils/io/io_task.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/source/libs/asura-lib-utils/io/io_task.cpp b/source/libs/asura-lib-utils/io/io_task.cpp
index a96c293..1a50e56 100644
--- a/source/libs/asura-lib-utils/io/io_task.cpp
+++ b/source/libs/asura-lib-utils/io/io_task.cpp
@@ -1,5 +1,8 @@
#include "io_task.h"
+using namespace AEScripting;
+using namespace Luax;
+
namespace AsuraEngine
{
namespace IO
@@ -20,9 +23,17 @@ namespace AsuraEngine
return true;
}
- void IOTask::Invoke()
+ void IOTask::Invoke(lua_State* thread)
{
-
+ if (mCallback)
+ {
+ LuaxScopedState state(thread);
+ if (PushLuaxMemberRef(state, mCallback))
+ {
+ PushLuaxMemberRef(state, mDstRef);
+ state.Call(1, 0);
+ }
+ }
}
}