From a0925e628ebae82a57acffb2824e2e4232b3ebb6 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Sat, 27 Aug 2016 10:30:34 +0100 Subject: [PATCH] core: use full rct signatures if just one input It is slightly smaller, but requires all rings to have the real input on the same index, so can only be used for single input txes. --- src/cryptonote_core/cryptonote_format_utils.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/cryptonote_core/cryptonote_format_utils.cpp b/src/cryptonote_core/cryptonote_format_utils.cpp index cbaf1139..32b96f1f 100644 --- a/src/cryptonote_core/cryptonote_format_utils.cpp +++ b/src/cryptonote_core/cryptonote_format_utils.cpp @@ -656,7 +656,10 @@ namespace cryptonote size_t n_total_outs = sources[0].outputs.size(); // only for non-simple rct BOOST_FOREACH(const tx_source_entry& src_entr, sources) all_rct_inputs &= !(src_entr.mask == rct::identity()); - bool use_simple_rct = true; //all_rct_inputs; + + // the non-simple version is slightly smaller, but assumes all real inputs + // are on the same index, so can only be used if there just one ring. + bool use_simple_rct = sources.size() > 1; if (!use_simple_rct) {