Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas-ide
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas-ide
Commits
cb7961fb
Commit
cb7961fb
authored
Apr 04, 2016
by
chriseth
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #119 from axic/patch/vmupdate
Update VM to latest
parents
eef9e43f
00425984
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
12 deletions
+12
-12
universal-dapp.js
assets/js/universal-dapp.js
+12
-12
No files found.
assets/js/universal-dapp.js
View file @
cb7961fb
...
...
@@ -7,15 +7,13 @@ function UniversalDApp (contracts, options) {
if
(
!
options
.
vm
&&
web3
.
currentProvider
)
{
}
else
if
(
options
.
vm
)
{
this
.
vm
=
new
EthVm
();
//@todo this does not calculate the gas costs correctly but gets the job done.
this
.
identityCode
=
'return { gasUsed: 1, return: opts.data, exception: 1 };'
;
this
.
identityAddr
=
ethUtil
.
pad
(
new
Buffer
(
'04'
,
'hex'
),
20
)
this
.
vm
.
loadCompiled
(
this
.
identityAddr
,
this
.
identityCode
);
this
.
BN
=
EthJS
.
BN
;
this
.
stateTrie
=
new
EthJS
.
Trie
();
this
.
vm
=
new
EthJS
.
VM
(
this
.
stateTrie
);
this
.
secretKey
=
'3cd7232cd6f3fc66a57a6bedc1a8ed6c228fff0a327e169c2bcc5e869ed49511'
this
.
publicKey
=
'0406cc661590d48ee972944b35ad13ff03c7876eae3fd191e8a2f77311b0a3c6613407b5005e63d7d8d76b89d5f900cde691497688bb281e07a5052ff61edebdc0'
this
.
address
=
ethUtil
.
pubToAddress
(
new
Buffer
(
this
.
publicKey
,
'hex'
));
this
.
account
=
new
Account
();
this
.
address
=
ethUtil
.
pubToAddress
(
new
Buffer
(
this
.
publicKey
,
'hex'
)
,
true
);
this
.
account
=
new
EthJS
.
Account
();
this
.
account
.
balance
=
'f00000000000000001'
;
this
.
nonce
=
0
;
this
.
vm
.
stateManager
.
trie
.
put
(
this
.
address
,
this
.
account
.
serialize
());
...
...
@@ -292,6 +290,8 @@ UniversalDApp.prototype.getCallButton = function(args) {
self
.
runTx
(
data
,
args
,
function
(
err
,
result
)
{
if
(
err
)
{
replaceOutput
(
$result
,
$
(
'<span/>'
).
text
(
err
).
addClass
(
'error'
));
}
else
if
(
result
.
vm
.
exception
&&
result
.
vm
.
exceptionError
)
{
replaceOutput
(
$result
,
$
(
'<span/>'
).
text
(
'VM Exception: '
+
result
.
vm
.
exceptionError
).
addClass
(
'error'
));
}
else
if
(
self
.
options
.
vm
&&
result
.
vm
.
return
===
undefined
)
{
replaceOutput
(
$result
,
$
(
'<span/>'
).
text
(
'Exception during execution.'
).
addClass
(
'error'
));
}
else
if
(
self
.
options
.
vm
&&
isConstructor
)
{
...
...
@@ -437,16 +437,16 @@ UniversalDApp.prototype.runTx = function( data, args, cb) {
}
}
else
{
try
{
var
tx
=
new
Tx
({
var
tx
=
new
EthJS
.
Tx
({
nonce
:
new
Buffer
([
this
.
nonce
++
]),
//@todo count beyond 255
gasPrice
:
'01'
,
gasLimit
:
'3000000000'
,
//plenty
gasPrice
:
1
,
gasLimit
:
3000000000
,
//plenty
to
:
to
,
value
:
value
,
data
:
data
data
:
new
Buffer
(
data
.
slice
(
2
),
'hex'
)
});
tx
.
sign
(
new
Buffer
(
this
.
secretKey
,
'hex'
));
this
.
vm
.
runTx
({
tx
:
tx
},
cb
);
this
.
vm
.
runTx
({
tx
:
tx
,
skipBalance
:
true
,
skipNonce
:
true
,
enableHomestead
:
true
},
cb
);
}
catch
(
e
)
{
cb
(
e
,
null
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment