diff --git a/src/box/lua/console.c b/src/box/lua/console.c index d203629d1237..8c0c69043dfc 100644 --- a/src/box/lua/console.c +++ b/src/box/lua/console.c @@ -471,7 +471,17 @@ lbox_console_format_yaml(struct lua_State *L) } lua_replace(L, 1); lua_settop(L, 1); - return lua_yaml_encode(L, serializer_yaml, NULL, NULL); + int ret = lua_yaml_encode(L, serializer_yaml, NULL, NULL); + if (ret == 2) { + /* + * Nil and error object are pushed onto the stack. + */ + assert(lua_isnil(L, -2)); + assert(lua_isstring(L, -1)); + return luaL_error(L, lua_tostring(L, -1)); + } + assert(ret == 1); + return ret; } /**