Merge pull request #10 from GameAnalytics/fix_merge_leak
Release resource created for merge result
diff --git a/c_src/hyper_carray.c b/c_src/hyper_carray.c
index 33bf75c..2672cb8 100644
--- a/c_src/hyper_carray.c
+++ b/c_src/hyper_carray.c
@@ -128,7 +128,7 @@
carray_merge_item(arr, index, new_value);
- return enif_make_resource(env, arr);
+ return argv[2];
}
void dtor(ErlNifEnv * env, void *obj);
@@ -186,7 +186,9 @@
return enif_make_badarg(env);
}
- return enif_make_resource(env, acc);
+ ERL_NIF_TERM erl_res = enif_make_resource(env, acc);
+ enif_release_resource(acc);
+ return erl_res;
}
/*