Open nkramer44 opened 6 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 91.66%. Comparing base (
2a68c4a
) to head (ab75466
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Fixes #513
As seen in transaction
138543329687544CDAFCD3AB0DCBFE9C4F8E710397747BA7155F19426F493C8D
, sometimesEscrowFinish
transactions can show up in validated ledger transaction sets with an invalid fulfillment or condition. We added afulfillmentRawValue
andconditionRawValue
, and normalization functions to try to makefulfillment()
equivalent tofulfillmentRawValue
andcondition()
equivalent toconditionRawValue
in #483. However, we missed a special case where the fulfillment or condition could be well formed in the first 32 bytes, but contain extra bytes afterward (in the case of 138543329687544CDAFCD3AB0DCBFE9C4F8E710397747BA7155F19426F493C8D, the fulfillment is duplicated), which causes an exception to be thrown by the normalization function.This PR fixes this issue by checking that the parsed fulfillment or condition is equivalent to the fulfillment/condition raw value. If it is not equivalent, we will not set
fulfillment
orcondition
. If it is, we will.