aboutsummaryrefslogtreecommitdiffstats
path: root/src/lua/lua_task.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lua/lua_task.c')
-rw-r--r--src/lua/lua_task.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/lua/lua_task.c b/src/lua/lua_task.c
index 13fe9042e..08470fcad 100644
--- a/src/lua/lua_task.c
+++ b/src/lua/lua_task.c
@@ -684,11 +684,6 @@ static const struct luaL_reg urllib_m[] = {
};
/* Blob methods */
-struct rspamd_lua_text {
- const gchar *start;
- gsize len;
-};
-
LUA_FUNCTION_DEF (text, len);
LUA_FUNCTION_DEF (text, str);
@@ -740,7 +735,7 @@ lua_check_url (lua_State * L)
return ud ? *((struct rspamd_url **)ud) : NULL;
}
-static struct rspamd_lua_text *
+struct rspamd_lua_text *
lua_check_text (lua_State * L, gint pos)
{
void *ud = luaL_checkudata (L, pos, "rspamd{text}");
@@ -1016,9 +1011,14 @@ static gint
lua_task_get_content (lua_State * L)
{
struct rspamd_task *task = lua_check_task (L, 1);
+ struct rspamd_lua_text *t;
if (task) {
- lua_pushlstring (L, task->msg.start, task->msg.len);
+ t = lua_newuserdata (L, sizeof (*t));
+ rspamd_lua_setclass (L, "rspamd{text}", -1);
+ t->len = task->msg.len;
+ t->start = task->msg.start;
+
return 1;
}