2

Why does getProduct(..) always return an empty address 0x00 on browser-solidity?

pragma solidity ^0.4.7;

contract Products {
    struct Product {
        bytes32 name;
        uint votes;
        address company;
    }

    mapping (uint => Product) products;
    mapping (address => uint) companyProductsCounter;
    uint private counter;

    function Products () {
        counter = 0;
    }

    function registerProduct( bytes32 productName) {
        products[counter++] = Product({name: productName, votes: 0, company: msg.sender});
    }

    function getProduct(uint code) constant returns (bytes32 name, uint votes, address company) {
        products[code].name;
        products[code].votes;
        products[code].company;
    }
}
q9f
  • 32,913
  • 47
  • 156
  • 395
underdog
  • 1,190
  • 2
  • 12
  • 24

1 Answers1

3

Could it because the return parameters of getProduct(unit) are left unset?

Try:

function getProduct(uint code) constant returns (bytes32 name, uint votes, address company) {
    name=products[code].name;
    votes=products[code].votes;
    company=products[code].company;
}
Lee
  • 8,548
  • 6
  • 46
  • 80