[Tarantool-patches] [PATCH v1 1/1] netbox: fix memleak in lbox_tuple_format_new()
imeevma at tarantool.org
imeevma at tarantool.org
Wed Oct 30 13:58:45 MSK 2019
Memleak appeared due to the fact that when creating a dictionary
its reference count is 1 from the beginning. Later, when the
dictionary is used to create tuple_format, its reference counter
increased by 1 and it became equal to 2. After removing
tuple_format, the reference counter for dict decreased by one, so
it became equal to 1. Since ref counter is not equal to 0, dict
not deleted, causing a memory leak.
Closes #4588
---
src/box/lua/misc.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/box/lua/misc.cc b/src/box/lua/misc.cc
index 7b8b9dc..102194e 100644
--- a/src/box/lua/misc.cc
+++ b/src/box/lua/misc.cc
@@ -233,6 +233,7 @@ lbox_tuple_format_new(struct lua_State *L)
NULL, 0, 0, dict, false, false);
if (format == NULL)
return luaT_error(L);
+ tuple_dictionary_unref(dict);
return lbox_push_tuple_format(L, format);
}
--
2.7.4
More information about the Tarantool-patches
mailing list