web3-eth 0.2.20 → 0.2.21

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6eee93039118865e85f95566567552c592c8e72f
4
- data.tar.gz: e65572456c241acab1e55ec62e3a450cf744b7a4
3
+ metadata.gz: 27869236d216cf8a0cbeb2c1102cc3e9d3505ba6
4
+ data.tar.gz: d2e4948dcdc6b237acebe86da9bb6bb9a2908aef
5
5
  SHA512:
6
- metadata.gz: afa11909a8e2ba1c5c068be2257184bc05875a0c8b506ed18fd97a3aa03d63b99230dd8302a4392a2a539c0c4d01c14e23e6d9a608809c22e7eb1910866e7986
7
- data.tar.gz: 0f099d8e1e5d4fb78c0390dcd7e0dd260acb1f39b139872f1d631f4d6a49d86ae0aa958695efa75623bf6c28beb0520db2fc0740d6cea6408aa82e3fcd2108cd
6
+ metadata.gz: ce86e2db9a40f52e0376427d5976cdd67c8cadba1d2829d3e80c7cc12b806d99c85cc2056ccf604db24f5fd25f2a8bcbab2520df1533d598ffded5e514888c64
7
+ data.tar.gz: 0ba1c2c31b35929922dea30d49cc547386ba784805694c599a388c82829692f8b0caf8af6a9300b2288f2e8d1d7d8c4605b15a764c83ae8b4e01d9e8a126dbb4
@@ -248,7 +248,8 @@ module Web3::Eth::Abi
248
248
  end
249
249
 
250
250
  def decode_type(type, arg)
251
- if type.kind_of?(Tuple)
251
+ return nil if arg.nil?
252
+ if type.kind_of?(Tuple) && type.dims.empty?
252
253
  arg ? decode_abi(type.types, arg) : []
253
254
  elsif %w(string bytes).include?(type.base) && type.sub.empty?
254
255
  l = Utils.big_endian_to_int arg[0,32]
@@ -261,7 +262,7 @@ module Web3::Eth::Abi
261
262
  if subtype.dynamic?
262
263
  raise DecodingError, "Not enough data for head" unless arg.size >= 32 + 32*l
263
264
 
264
- start_positions = (1..l).map {|i| Utils.big_endian_to_int arg[32*i, 32] }
265
+ start_positions = (1..l).map {|i| 32+Utils.big_endian_to_int(arg[32*i, 32]) }
265
266
  start_positions.push arg.size
266
267
 
267
268
  outputs = (0...l).map {|i| arg[start_positions[i]...start_positions[i+1]] }
@@ -139,6 +139,9 @@ module Web3::Eth::Abi
139
139
  nil
140
140
  end
141
141
 
142
+ def subtype
143
+ @subtype ||= Tuple.new(types, dims[0...-1])
144
+ end
142
145
 
143
146
  end
144
147
 
@@ -1,5 +1,5 @@
1
1
  module Web3
2
2
  module Eth
3
- VERSION = "0.2.20"
3
+ VERSION = "0.2.21"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web3-eth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.20
4
+ version: 0.2.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - studnev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-31 00:00:00.000000000 Z
11
+ date: 2019-04-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rlp