Commit 7f723837 by Francisco Giordano

change type of owners from uint[] to address[]

fixes #175
parent bc0f9b0e
......@@ -23,9 +23,9 @@ contract Shareable {
uint public required;
// list of owners
uint[256] owners;
address[256] owners;
// index on the list of owners to allow reverse lookup
mapping(uint => uint) ownerIndex;
mapping(address => uint) ownerIndex;
// the ongoing operations.
mapping(bytes32 => PendingState) pendings;
bytes32[] pendingsIndex;
......@@ -57,18 +57,18 @@ contract Shareable {
// constructor is given number of sigs required to do protected "onlymanyowners" transactions
// as well as the selection of addresses capable of confirming them.
function Shareable(address[] _owners, uint _required) {
owners[1] = uint(msg.sender);
ownerIndex[uint(msg.sender)] = 1;
owners[1] = msg.sender;
ownerIndex[msg.sender] = 1;
for (uint i = 0; i < _owners.length; ++i) {
owners[2 + i] = uint(_owners[i]);
ownerIndex[uint(_owners[i])] = 2 + i;
owners[2 + i] = _owners[i];
ownerIndex[_owners[i]] = 2 + i;
}
required = _required;
}
// Revokes a prior confirmation of the given operation
function revoke(bytes32 _operation) external {
uint index = ownerIndex[uint(msg.sender)];
uint index = ownerIndex[msg.sender];
// make sure they're an owner
if (index == 0) {
return;
......@@ -88,12 +88,12 @@ contract Shareable {
}
function isOwner(address _addr) constant returns (bool) {
return ownerIndex[uint(_addr)] > 0;
return ownerIndex[_addr] > 0;
}
function hasConfirmed(bytes32 _operation, address _owner) constant returns (bool) {
var pending = pendings[_operation];
uint index = ownerIndex[uint(_owner)];
uint index = ownerIndex[_owner];
// make sure they're an owner
if (index == 0) {
......@@ -107,7 +107,7 @@ contract Shareable {
function confirmAndCheck(bytes32 _operation) internal returns (bool) {
// determine what index the present sender is:
uint index = ownerIndex[uint(msg.sender)];
uint index = ownerIndex[msg.sender];
// make sure they're an owner
if (index == 0) {
return;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment