You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.5 KiB

  1. --- a/src/lua.c
  2. +++ b/src/lua.c
  3. @@ -281,9 +281,6 @@ static int lua_cb_register_read(lua_Stat
  4. luaL_checktype(L, 1, LUA_TFUNCTION);
  5. - char function_name[DATA_MAX_NAME_LEN];
  6. - snprintf(function_name, sizeof(function_name), "lua/%s", lua_tostring(L, 1));
  7. -
  8. int callback_id = clua_store_callback(L, 1);
  9. if (callback_id < 0)
  10. return luaL_error(L, "%s", "Storing callback function failed");
  11. @@ -298,6 +295,9 @@ static int lua_cb_register_read(lua_Stat
  12. if (cb == NULL)
  13. return luaL_error(L, "%s", "calloc failed");
  14. + char function_name[DATA_MAX_NAME_LEN];
  15. + snprintf(function_name, sizeof(function_name), "lua/%p", thread);
  16. +
  17. cb->lua_state = thread;
  18. cb->callback_id = callback_id;
  19. cb->lua_function_name = strdup(function_name);
  20. @@ -325,9 +325,6 @@ static int lua_cb_register_write(lua_Sta
  21. luaL_checktype(L, 1, LUA_TFUNCTION);
  22. - char function_name[DATA_MAX_NAME_LEN] = "";
  23. - snprintf(function_name, sizeof(function_name), "lua/%s", lua_tostring(L, 1));
  24. -
  25. int callback_id = clua_store_callback(L, 1);
  26. if (callback_id < 0)
  27. return luaL_error(L, "%s", "Storing callback function failed");
  28. @@ -342,6 +339,9 @@ static int lua_cb_register_write(lua_Sta
  29. if (cb == NULL)
  30. return luaL_error(L, "%s", "calloc failed");
  31. + char function_name[DATA_MAX_NAME_LEN] = "";
  32. + snprintf(function_name, sizeof(function_name), "lua/%p", thread);
  33. +
  34. cb->lua_state = thread;
  35. cb->callback_id = callback_id;
  36. cb->lua_function_name = strdup(function_name);