From f54301dd752ac1c6ff43d1e9e69f07b16313bf41 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Mon, 7 Oct 2019 09:50:00 +0100 Subject: [PATCH] Fix for miners on reorg Make sure dataset gets re-init'd if a reorg changes the epoch --- src/crypto/rx-slow-hash.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/crypto/rx-slow-hash.c b/src/crypto/rx-slow-hash.c index 11aa5584d..59bd89d13 100644 --- a/src/crypto/rx-slow-hash.c +++ b/src/crypto/rx-slow-hash.c @@ -161,8 +161,11 @@ void rx_reorg(const uint64_t split_height) { int i; CTHR_MUTEX_LOCK(rx_mutex); for (i=0; i<2; i++) { - if (split_height < rx_s[i].rs_height) + if (split_height <= rx_s[i].rs_height) { + if (rx_s[i].rs_height == rx_dataset_height) + rx_dataset_height = 1; rx_s[i].rs_height = 1; /* set to an invalid seed height */ + } } CTHR_MUTEX_UNLOCK(rx_mutex); }