mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Clean up/improve some scriptapi error handling code
This commit is contained in:
parent
7423c4c11e
commit
766e885a1b
11 changed files with 120 additions and 94 deletions
|
@ -29,6 +29,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
|||
#include "inventory.h"
|
||||
#include "inventorymanager.h"
|
||||
|
||||
#define WRAP_LUAERROR(e, detail) \
|
||||
LuaError(std::string(__FUNCTION__) + ": " + (e).what() + ". " detail)
|
||||
|
||||
bool ScriptApiItem::item_OnDrop(ItemStack &item,
|
||||
ServerActiveObject *dropper, v3f pos)
|
||||
{
|
||||
|
@ -49,7 +52,7 @@ bool ScriptApiItem::item_OnDrop(ItemStack &item,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
@ -81,7 +84,7 @@ bool ScriptApiItem::item_OnPlace(ItemStack &item,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
@ -108,7 +111,7 @@ bool ScriptApiItem::item_OnUse(ItemStack &item,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
@ -133,7 +136,7 @@ bool ScriptApiItem::item_OnSecondaryUse(ItemStack &item,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
@ -165,7 +168,7 @@ bool ScriptApiItem::item_OnCraft(ItemStack &item, ServerActiveObject *user,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
@ -197,7 +200,7 @@ bool ScriptApiItem::item_CraftPredict(ItemStack &item, ServerActiveObject *user,
|
|||
try {
|
||||
item = read_item(L, -1, getServer()->idef());
|
||||
} catch (LuaError &e) {
|
||||
throw LuaError(std::string(e.what()) + ". item=" + item.name);
|
||||
throw WRAP_LUAERROR(e, "item=" + item.name);
|
||||
}
|
||||
}
|
||||
lua_pop(L, 2); // Pop item and error handler
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue