mirror of
https://codeberg.org/keyoxide/doipjs.git
synced 2024-12-22 14:39:28 -07:00
Fix verification logic
This commit is contained in:
parent
f64f9cff58
commit
2c722d31a9
2 changed files with 9 additions and 7 deletions
|
@ -251,7 +251,9 @@ class Claim {
|
|||
|
||||
// Post process the data
|
||||
if (claimData.functions && claimData.functions.postprocess) {
|
||||
try {
|
||||
({ claimData, proofData } = claimData.functions.postprocess(claimData, proofData))
|
||||
} catch (_) {}
|
||||
}
|
||||
} else {
|
||||
// Consider the proof completed but with a negative result
|
||||
|
@ -261,12 +263,12 @@ class Claim {
|
|||
proof: {},
|
||||
errors: [proofFetchError]
|
||||
}
|
||||
}
|
||||
|
||||
if (this.isAmbiguous()) {
|
||||
if (this.isAmbiguous() && !verificationResult.result) {
|
||||
// Assume a wrong match and continue
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
if (verificationResult.completed) {
|
||||
// Store the result, keep a single match and stop verifying
|
||||
|
@ -283,7 +285,7 @@ class Claim {
|
|||
result: false,
|
||||
completed: true,
|
||||
proof: {},
|
||||
errors: ['Unknown error']
|
||||
errors: []
|
||||
}
|
||||
|
||||
this._status = E.ClaimStatus.VERIFIED
|
||||
|
|
|
@ -172,7 +172,7 @@ const runJSON = async (proofData, checkPath, checkClaim, checkClaimFormat, check
|
|||
}
|
||||
}
|
||||
|
||||
if (!(checkPath[0] in proofData)) {
|
||||
if (typeof proofData === 'object' && !(checkPath[0] in proofData)) {
|
||||
throw new Error('err_json_structure_incorrect')
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue