From 01a81554ff79bb446b21650fe9b64cc78df28e40 Mon Sep 17 00:00:00 2001 From: abitmore Date: Tue, 3 Jul 2018 12:24:25 -0400 Subject: [PATCH] Minor performance improvement for price::is_null() --- libraries/chain/protocol/asset.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libraries/chain/protocol/asset.cpp b/libraries/chain/protocol/asset.cpp index e1169b0c..c47d88e3 100644 --- a/libraries/chain/protocol/asset.cpp +++ b/libraries/chain/protocol/asset.cpp @@ -130,7 +130,11 @@ namespace graphene { namespace chain { return ~(asset( cp.numerator().convert_to(), debt.asset_id ) / asset( cp.denominator().convert_to(), collateral.asset_id )); } FC_CAPTURE_AND_RETHROW( (debt)(collateral)(collateral_ratio) ) } - bool price::is_null() const { return *this == price(); } + bool price::is_null() const + { + // Effectively same as "return *this == price();" but perhaps faster + return ( base.asset_id == asset_id_type() && quote.asset_id == asset_id_type() ); + } void price::validate() const { try {