From 047fcffde1f8530d3aee279b731e5e5f5901590a Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Fri, 4 Sep 2020 12:47:37 +0200 Subject: [PATCH] legacy: replace confusing Version group ID error message --- legacy/firmware/signing.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/legacy/firmware/signing.c b/legacy/firmware/signing.c index 1172c7a2f9..f016a921a9 100644 --- a/legacy/firmware/signing.c +++ b/legacy/firmware/signing.c @@ -1424,14 +1424,21 @@ void signing_txack(TransactionType *tx) { signing_abort(); return; } - if (coin->overwintered && - (tx->version >= 3) != (tx->has_version_group_id)) { - fsm_sendFailure(FailureType_Failure_DataError, - _("Version group ID must be set when version >= 3.")); - signing_abort(); - return; - } - if (!coin->overwintered) { + if (coin->overwintered) { + if (tx->version >= 3 && !tx->has_version_group_id) { + fsm_sendFailure(FailureType_Failure_DataError, + _("Version group ID must be set when version >= 3.")); + signing_abort(); + return; + } + if (tx->version < 3 && tx->has_version_group_id) { + fsm_sendFailure( + FailureType_Failure_DataError, + _("Version group ID must be unset when version < 3.")); + signing_abort(); + return; + } + } else { // !coin->overwintered if (tx->has_version_group_id) { fsm_sendFailure(FailureType_Failure_DataError, _("Version group ID not enabled on this coin."));