aboutsummaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
Diffstat (limited to 'ui')
-rw-r--r--ui/app/send.js8
-rw-r--r--ui/app/util.js5
2 files changed, 12 insertions, 1 deletions
diff --git a/ui/app/send.js b/ui/app/send.js
index 97ed29e4a..b8af19028 100644
--- a/ui/app/send.js
+++ b/ui/app/send.js
@@ -7,6 +7,7 @@ const actions = require('./actions')
const util = require('./util')
const numericBalance = require('./util').numericBalance
const addressSummary = require('./util').addressSummary
+const isHex = require('./util').isHex
const EthBalance = require('./components/eth-balance')
const ethUtil = require('ethereumjs-util')
const RangeSlider = require('./components/range-slider')
@@ -190,7 +191,7 @@ SendTransactionScreen.prototype.render = function () {
marginBottom: '16px',
},
}, [
- 'Transactional Data (optional)',
+ 'Transaction Data (optional)',
]),
// 'data' field
@@ -312,6 +313,11 @@ SendTransactionScreen.prototype.onSubmit = function (gasPrice) {
return this.props.dispatch(actions.displayWarning(message))
}
+ if (!isHex(ethUtil.stripHexPrefix(txData)) && txData) {
+ message = 'Transaction data must be hex string.'
+ return this.props.dispatch(actions.displayWarning(message))
+ }
+
this.props.dispatch(actions.hideWarning())
var txParams = {
diff --git a/ui/app/util.js b/ui/app/util.js
index e4b77e2bc..7a56bf6a0 100644
--- a/ui/app/util.js
+++ b/ui/app/util.js
@@ -35,6 +35,7 @@ module.exports = {
normalizeNumberToWei: normalizeNumberToWei,
valueTable: valueTable,
bnTable: bnTable,
+ isHex: isHex,
}
function valuesFor (obj) {
@@ -209,3 +210,7 @@ function readableDate (ms) {
var time = `${hours}:${minutes.substr(-2)}:${seconds.substr(-2)}`
return `${dateStr} ${time}`
}
+
+function isHex (str) {
+ return Boolean(str.match(/^(0x)?[0-9a-fA-F]+$/))
+}