X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fldk%2Fstructs%2FConfirm.java;h=485c486fb819d42705d0c773d14d3e9984cb211a;hb=d87886bb194886ef86d3597a5cdc142b6ccc89e9;hp=bfa6bbe60101827a3a69476e5cb8df5db0fdd1e1;hpb=f3e670e9341decac613d33fc52febf19cea32f20;p=ldk-java diff --git a/src/main/java/org/ldk/structs/Confirm.java b/src/main/java/org/ldk/structs/Confirm.java index bfa6bbe6..485c486f 100644 --- a/src/main/java/org/ldk/structs/Confirm.java +++ b/src/main/java/org/ldk/structs/Confirm.java @@ -4,6 +4,7 @@ import org.ldk.impl.bindings; import org.ldk.enums.*; import org.ldk.util.*; import java.util.Arrays; +import java.lang.ref.Reference; import javax.annotation.Nullable; /** @@ -111,8 +112,9 @@ public class Confirm extends CommonBase { final LDKConfirmHolder impl_holder = new LDKConfirmHolder(); impl_holder.held = new Confirm(new bindings.LDKConfirm() { @Override public void transactions_confirmed(byte[] header, long[] txdata, int height) { - TwoTuple_usizeTransactionZ[] txdata_conv_28_arr = new TwoTuple_usizeTransactionZ[txdata.length]; - for (int c = 0; c < txdata.length; c++) { + int txdata_conv_28_len = txdata.length; + TwoTuple_usizeTransactionZ[] txdata_conv_28_arr = new TwoTuple_usizeTransactionZ[txdata_conv_28_len]; + for (int c = 0; c < txdata_conv_28_len; c++) { long txdata_conv_28 = txdata[c]; TwoTuple_usizeTransactionZ txdata_conv_28_hu_conv = new TwoTuple_usizeTransactionZ(null, txdata_conv_28); txdata_conv_28_hu_conv.ptrs_to.add(this); @@ -151,6 +153,10 @@ public class Confirm extends CommonBase { */ public void transactions_confirmed(byte[] header, TwoTuple_usizeTransactionZ[] txdata, int height) { bindings.Confirm_transactions_confirmed(this.ptr, InternalUtils.check_arr_len(header, 80), txdata != null ? Arrays.stream(txdata).mapToLong(txdata_conv_28 -> txdata_conv_28 != null ? txdata_conv_28.ptr : 0).toArray() : null, height); + Reference.reachabilityFence(this); + Reference.reachabilityFence(header); + Reference.reachabilityFence(txdata); + Reference.reachabilityFence(height); } /** @@ -165,6 +171,8 @@ public class Confirm extends CommonBase { */ public void transaction_unconfirmed(byte[] txid) { bindings.Confirm_transaction_unconfirmed(this.ptr, InternalUtils.check_arr_len(txid, 32)); + Reference.reachabilityFence(this); + Reference.reachabilityFence(txid); } /** @@ -175,6 +183,9 @@ public class Confirm extends CommonBase { */ public void best_block_updated(byte[] header, int height) { bindings.Confirm_best_block_updated(this.ptr, InternalUtils.check_arr_len(header, 80), height); + Reference.reachabilityFence(this); + Reference.reachabilityFence(header); + Reference.reachabilityFence(height); } /** @@ -194,6 +205,7 @@ public class Confirm extends CommonBase { */ public byte[][] get_relevant_txids() { byte[][] ret = bindings.Confirm_get_relevant_txids(this.ptr); + Reference.reachabilityFence(this); return ret; }