Commit 36682d21 authored by chriseth's avatar chriseth Committed by GitHub

Merge pull request #125 from ethereum/patch/gaslimit-overhaul

Support changing the gas limit in the UI
parents d66a7a48 3f4cb564
......@@ -73,8 +73,8 @@
<div class="crow">
<label for="txorigin"><select name="txorigin" id="txorigin"></select> Transaction origin</label>
</div>
<div class="crow hide">
<label for="gas"><input type="number" id="gas" value="0"> Gas</label>
<div class="crow">
<label for="gasLimit"><input type="number" id="gasLimit" value="3000000"> Gas limit</label>
</div>
<div class="crow hide">
<label for="gasPrice"><input type="number" id="gasPrice" value="0"> Gas Price</label>
......
......@@ -67,6 +67,7 @@ function Renderer (editor, executionContext, updateFiles) {
var comp = $('#value').val().split(' ');
return executionContext.web3().toWei(comp[0], comp.slice(1).join(' '));
},
getGasLimit: function () { return $('#gasLimit').val(); },
removable_instances: true,
renderOutputModifier: function (contractName, $contractOutput) {
var contract = data.contracts[contractName];
......
......@@ -618,7 +618,14 @@ UniversalDApp.prototype.runTx = function (data, args, cb) {
data = '0x' + data;
}
var gas = self.options.getGas ? self.options.getGas : 1000000;
var gasLimit = 3000000;
if (self.options.getGasLimit) {
try {
gasLimit = self.options.getGasLimit();
} catch (e) {
return cb(e);
}
}
var value = 0;
if (self.options.getValue) {
......@@ -645,7 +652,7 @@ UniversalDApp.prototype.runTx = function (data, args, cb) {
return cb(err, resp);
}
if (resp > gas) {
if (resp > gasLimit) {
return cb('Gas required exceeds limit: ' + resp);
}
......@@ -667,7 +674,7 @@ UniversalDApp.prototype.runTx = function (data, args, cb) {
tx = new EthJSTX({
nonce: new Buffer([account.nonce++]), // @todo count beyond 255
gasPrice: 1,
gasLimit: 3000000000, // plenty
gasLimit: gasLimit,
to: to,
value: new BN(value, 10),
data: new Buffer(data.slice(2), 'hex')
......
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