Skip to content

Double checking requireLicense#

Informational

In URI.sol there is an if statement on line 105 that includes a check of canvas.requireLicense. But at that part of the code, the value will always be true, because it is already enforced a few lines above (L102).

if (canvas.requireLicense) {
    bool isValid;
    (isValid, uri) = checkValidLicense(collectionAddress, tokenId, refs[i]);
    if ((canvas.requireLicense && !isValid) || keccak256(bytes(uri)) == keccak256(bytes(''))) { unchecked { i++; } continue; }
}

Recommendation#

Remove canvas.requireLicense check from line 105 like this:

if (canvas.requireLicense) {
    bool isValid;
    (isValid, uri) = checkValidLicense(collectionAddress, tokenId, refs[i]);
    if (!isValid || keccak256(uri) == keccak256('')) { unchecked { i++; } continue; }
}