From e679bf14a12b51554abe812026d9699451d53f1f Mon Sep 17 00:00:00 2001
From: Chris Xiong <chirs241097@gmail.com>
Date: Sat, 27 Aug 2022 23:49:27 -0400
Subject: Add hash function for uncompressed signatures.

---
 signature.cpp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/signature.cpp b/signature.cpp
index cd55a77..fb2e757 100644
--- a/signature.cpp
+++ b/signature.cpp
@@ -288,5 +288,13 @@ signature_config signature::default_cfg()
 
 size_t signature_hash::operator()(signature const& sig) const noexcept
 {
-    return compressed_vector_hash<uint8_t, 3>{}(sig.p->ct);
+    if (sig.p->compressed)
+        return compressed_vector_hash<uint8_t, 3>{}(sig.p->ct);
+    else
+    {
+        size_t ret = 0;
+        for (uint8_t &v : sig.p->uct)
+            ret ^= v + 0x9e3779b9 + (ret << 6) + (ret >> 2);
+        return ret;
+    }
 }
-- 
cgit v1.2.3