X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FChannelMonitor.ts;fp=ts%2Fstructs%2FChannelMonitor.ts;h=ff746a206aa4d6710141f5d54ecf94f242e4c55e;hb=3a507eb07003be3e6714e8a87fb397c09b401ce9;hp=8baaf1897141c0c97ad929fc4d825284bcf7b22f;hpb=ceda1e3041ff42b4aadc1245f6da26fd511b51ff;p=ldk-java diff --git a/ts/structs/ChannelMonitor.ts b/ts/structs/ChannelMonitor.ts index 8baaf189..ff746a20 100644 --- a/ts/structs/ChannelMonitor.ts +++ b/ts/structs/ChannelMonitor.ts @@ -51,7 +51,10 @@ import * as bindings from '../bindings' // TODO: figure out location const ret_a_hu_conv: OutPoint = new OutPoint(null, ret_a); ret_a_hu_conv.ptrs_to.add(this);; Uint8Array ret_b = bindings.LDKC2Tuple_OutPointScriptZ_get_b(ret); - TwoTuple ret_conv = new TwoTuple(ret_a_hu_conv, ret_b); + TwoTuple ret_conv = new TwoTuple(ret_a_hu_conv, ret_b, () -> { + bindings.C2Tuple_OutPointScriptZ_free(ret); + }); + ret_a_hu_conv.ptrs_to.add(ret_conv); return ret_conv; } @@ -98,10 +101,14 @@ import * as bindings from '../bindings' // TODO: figure out location number arr_conv_25_a = bindings.LDKC2Tuple_u32TxOutZ_get_a(arr_conv_25); number arr_conv_25_b = bindings.TxOut_clone(bindings.LDKC2Tuple_u32TxOutZ_get_b(arr_conv_25)); TxOut arr_conv_25_b_conv = new TxOut(null, arr_conv_25_b);; - TwoTuple arr_conv_25_conv = new TwoTuple(arr_conv_25_a, arr_conv_25_b_conv); + TwoTuple arr_conv_25_conv = new TwoTuple(arr_conv_25_a, arr_conv_25_b_conv, () -> { + bindings.C2Tuple_u32TxOutZ_free(arr_conv_25); + }); + arr_conv_25_b_conv.ptrs_to.add(arr_conv_25_conv); arr_conv_25_arr[z] = arr_conv_25_conv; }; TwoTuple[]> arr_conv_49_conv = new TwoTuple[]>(arr_conv_49_a, arr_conv_25_arr); + // Warning: We may not free the C tuple object! arr_conv_49_arr[x] = arr_conv_49_conv; } /* TODO 2 TwoTuple */;