From 6366734477300301cca6d0c76c010a193dd4eecc Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Fri, 11 Jan 2019 12:53:03 -0500 Subject: [PATCH] Properly encode parent witness addresses --- src/key_io.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/key_io.cpp b/src/key_io.cpp index 1ae7f6de35..835f84bbfb 100644 --- a/src/key_io.cpp +++ b/src/key_io.cpp @@ -50,7 +50,8 @@ public: std::vector data = {0}; data.reserve(33); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.begin(), id.end()); - return bech32::Encode(m_params.Bech32HRP(), data); + const std::string& hrp = for_parent ? m_params.ParentBech32HRP() : m_params.Bech32HRP(); + return bech32::Encode(hrp, data); } std::string operator()(const WitnessV0ScriptHash& id) const @@ -58,7 +59,8 @@ public: std::vector data = {0}; data.reserve(53); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.begin(), id.end()); - return bech32::Encode(m_params.Bech32HRP(), data); + const std::string& hrp = for_parent ? m_params.ParentBech32HRP() : m_params.Bech32HRP(); + return bech32::Encode(hrp, data); } std::string operator()(const WitnessUnknown& id) const