Merge pull request #65 from se3000/ownable_guard

add check prevening ownables from getting stuck
This commit is contained in:
Manuel Aráoz
2016-11-14 22:06:30 -03:00
committed by GitHub
2 changed files with 17 additions and 1 deletions

View File

@ -17,7 +17,7 @@ contract Ownable {
}
function transfer(address newOwner) onlyOwner {
owner = newOwner;
if (newOwner != address(0)) owner = newOwner;
}
}

View File

@ -39,4 +39,20 @@ contract('Ownable', function(accounts) {
.then(done)
});
it("should guard ownership against stuck state" ,function(done) {
var ownable = Ownable.deployed();
return ownable.owner()
.then(function (originalOwner) {
return ownable.transfer(null, {from: originalOwner})
.then(function() {
return ownable.owner();
})
.then(function(newOwner) {
assert.equal(originalOwner, newOwner);
})
.then(done);
});
});
});