X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fldk%2FPeerTest.java;h=746307862d04cda0a7cec84fa2ecbe49fbb46edb;hb=aa0e2aade37133339f4113a0cd7465b111f0a0d0;hp=884a08305590fbd439b34490ec832c8e201dd1de;hpb=e9808b32ca6552aa78fb7b8354c8900f038af0af;p=ldk-java diff --git a/src/test/java/org/ldk/PeerTest.java b/src/test/java/org/ldk/PeerTest.java index 884a0830..74630786 100644 --- a/src/test/java/org/ldk/PeerTest.java +++ b/src/test/java/org/ldk/PeerTest.java @@ -102,18 +102,23 @@ public class PeerTest { void connect_block(Block b, Transaction t, int height) { byte[] header = Arrays.copyOfRange(b.bitcoinSerialize(), 0, 80); long[] txn; - if (t != null) - txn = new long[] {bindings.C2Tuple_usizeTransactionZ_new(1, bindings.new_txpointer_copy_data(t.bitcoinSerialize()))}; - else + long txdata = 0; + if (t != null) { + txdata = bindings.new_txpointer_copy_data(t.bitcoinSerialize()); + txn = new long[]{bindings.C2Tuple_usizeTransactionZ_new(1, txdata)}; + } else txn = new long[0]; bindings.ChannelManager_block_connected(chan_manager, header, txn, height); + if (txdata != 0) bindings.txpointer_free(txdata); synchronized (monitors) { for (Long mon : monitors.values()) { - if (t != null) - txn = new long[] {bindings.C2Tuple_usizeTransactionZ_new(1, bindings.new_txpointer_copy_data(t.bitcoinSerialize()))}; - else + if (t != null) { + txdata = bindings.new_txpointer_copy_data(t.bitcoinSerialize()); + txn = new long[]{bindings.C2Tuple_usizeTransactionZ_new(1, txdata)}; + } else txn = new long[0]; long[] ret = bindings.ChannelMonitor_block_connected(mon, header, txn, height, tx_broadcaster, fee_estimator, logger); + if (txdata != 0) bindings.txpointer_free(txdata); for (long r : ret) { bindings.C2Tuple_TxidCVec_TxOutZZ_free(r); }