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.
This commit is contained in:
moneromooo-monero 2016-08-27 10:30:34 +01:00
parent 94fd881f74
commit a0925e628e
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3

View File

@ -656,7 +656,10 @@ namespace cryptonote
size_t n_total_outs = sources[0].outputs.size(); // only for non-simple rct size_t n_total_outs = sources[0].outputs.size(); // only for non-simple rct
BOOST_FOREACH(const tx_source_entry& src_entr, sources) BOOST_FOREACH(const tx_source_entry& src_entr, sources)
all_rct_inputs &= !(src_entr.mask == rct::identity()); 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) if (!use_simple_rct)
{ {