This commit is contained in:
Marek Kotewicz 2015-01-15 16:01:58 +01:00
parent 46b932ccc0
commit ec74fc05d4
4 changed files with 17 additions and 7 deletions

16
dist/ethereum.js vendored

@ -58,9 +58,10 @@ var findMethodIndex = function (json, methodName) {
/// @param string string to be padded
/// @param number of characters that result string should have
/// @param sign, by default 0
/// @returns right aligned string
var padLeft = function (string, chars) {
return new Array(chars - string.length + 1).join("0") + string;
var padLeft = function (string, chars, sign) {
return new Array(chars - string.length + 1).join(sign ? sign : "0") + string;
};
/// @param expected type prefix (string)
@ -87,8 +88,17 @@ var setupInputTypes = function () {
/// @returns right-aligned byte representation of int
var formatInt = function (value) {
var padding = 32 * 2;
if (typeof value === 'number')
if (typeof value === 'number') {
if (value < 0) {
// two's complement
// TODO: fix big numbers support
value = ((value) >>> 0).toString(16);
return padLeft(value, padding, 'f');
}
value = value.toString(16);
}
else if (value.indexOf('0x') === 0)
value = value.substr(2);
else if (typeof value === 'string')

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -92,7 +92,7 @@ var setupInputTypes = function () {
// two's complement
// TODO: fix big numbers support
value = ((value) >>> 0).toString(16)
value = ((value) >>> 0).toString(16);
return padLeft(value, padding, 'f');
}
value = value.toString(16);