From 5fbff6cf522ff490b644632b29ca005b70bf9e3c Mon Sep 17 00:00:00 2001 From: Nathan Hourt Date: Wed, 19 Aug 2015 10:23:06 -0400 Subject: [PATCH] Resolve #238: Light client now fetches chain_id from chain_properties --- programs/light_client/ChainDataModel.cpp | 2 ++ programs/light_client/ChainDataModel.hpp | 2 ++ programs/light_client/GrapheneApplication.cpp | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/programs/light_client/ChainDataModel.cpp b/programs/light_client/ChainDataModel.cpp index 62a843da..56643533 100644 --- a/programs/light_client/ChainDataModel.cpp +++ b/programs/light_client/ChainDataModel.cpp @@ -35,6 +35,8 @@ void ChainDataModel::setDatabaseAPI(fc::api dbapi) { m_db_api->subscribe_to_objects([this](const variant& d) { m_dynamic_global_properties = d.as(); }, {m_dynamic_global_properties.id}); + + m_chain_properties = m_db_api->get_chain_properties(); }); } diff --git a/programs/light_client/ChainDataModel.hpp b/programs/light_client/ChainDataModel.hpp index 39700246..d213bec4 100644 --- a/programs/light_client/ChainDataModel.hpp +++ b/programs/light_client/ChainDataModel.hpp @@ -61,6 +61,7 @@ public: const graphene::chain::global_property_object& global_properties() const { return m_global_properties; } const graphene::chain::dynamic_global_property_object& dynamic_global_properties() const { return m_dynamic_global_properties; } + const graphene::chain::chain_property_object& chain_properties() const { return m_chain_properties; } public Q_SLOTS: void broadcast(Transaction* transaction); @@ -78,6 +79,7 @@ private: graphene::chain::global_property_object m_global_properties; graphene::chain::dynamic_global_property_object m_dynamic_global_properties; + graphene::chain::chain_property_object m_chain_properties; ObjectId m_account_query_num = -1; account_multi_index_type m_accounts; diff --git a/programs/light_client/GrapheneApplication.cpp b/programs/light_client/GrapheneApplication.cpp index 463b2c4b..9365f968 100644 --- a/programs/light_client/GrapheneApplication.cpp +++ b/programs/light_client/GrapheneApplication.cpp @@ -100,7 +100,7 @@ void GrapheneApplication::signTransaction(Transaction* transaction) const return &model()->getAccount(id.instance.value)->accountObject().owner; }; - auto& chainId = model()->global_properties().chain_id; + auto& chainId = model()->chain_properties().chain_id; auto& trx = transaction->internalTransaction(); trx.set_reference_block(model()->dynamic_global_properties().head_block_id); flat_set pubKeys = wallet()->getAvailablePrivateKeys();