@@ -164,15 +164,17 @@ func encodeMethodArgsStrings(methodID []byte, methodSig string, methodArgs []str
164164 {
165165 u64 , err := strconv .ParseUint (methodArgs [i ], 10 , 32 )
166166 if err != nil {
167- log .Fatal (err )
167+ log .Print (err )
168+ return nil , fmt .Errorf ("failed to parse uint32 argument: %w" , err )
168169 }
169170 argData = uint32 (u64 )
170171 }
171172 case v == "uint64" :
172173 {
173174 u64 , err := strconv .ParseUint (methodArgs [i ], 10 , 64 )
174175 if err != nil {
175- log .Fatal (err )
176+ log .Print (err )
177+ return nil , fmt .Errorf ("failed to parse uint64 argument: %w" , err )
176178 }
177179 argData = u64
178180 }
@@ -187,7 +189,8 @@ func encodeMethodArgsStrings(methodID []byte, methodSig string, methodArgs []str
187189 value := [32 ]byte {}
188190 bytes , err := hexutil .Decode (methodArgs [i ])
189191 if err != nil {
190- log .Fatal (err )
192+ log .Print (err )
193+ return nil , fmt .Errorf ("failed to parse bytes32 argument: %w" , err )
191194 }
192195 copy (value [:], bytes )
193196 argData = value
@@ -197,14 +200,16 @@ func encodeMethodArgsStrings(methodID []byte, methodSig string, methodArgs []str
197200 {
198201 var bytesArgs []string
199202 if err := json .Unmarshal ([]byte (methodArgs [i ]), & bytesArgs ); err != nil {
200- log .Fatal (err )
203+ log .Print (err )
204+ return nil , fmt .Errorf ("failed to parse bytes[] argument: %w" , err )
201205 }
202206
203207 value := make ([][]byte , len (bytesArgs ))
204208 for j , bytesArg := range bytesArgs {
205209 bytes , err := hexutil .Decode (bytesArg )
206210 if err != nil {
207- log .Fatal (err )
211+ log .Print (err )
212+ return nil , fmt .Errorf ("failed to parse bytes[] argument: %w" , err )
208213 }
209214 value [j ] = bytes
210215 }
@@ -216,7 +221,8 @@ func encodeMethodArgsStrings(methodID []byte, methodSig string, methodArgs []str
216221 // of a "slice" when encoding. We want it to be a slice.
217222 bytes , err := hexutil .Decode (methodArgs [i ])
218223 if err != nil {
219- log .Fatal (err )
224+ log .Print (err )
225+ return nil , fmt .Errorf ("failed to parse bytes argument: %w" , err )
220226 }
221227 value := make ([]byte , len (bytes ))
222228 copy (value [:], bytes ) // nolint:gocritic
@@ -230,7 +236,8 @@ func encodeMethodArgsStrings(methodID []byte, methodSig string, methodArgs []str
230236 {
231237 value , err := strconv .ParseBool (methodArgs [i ])
232238 if err != nil {
233- log .Fatal (err )
239+ log .Print (err )
240+ return nil , fmt .Errorf ("failed to parse bool argument: %w" , err )
234241 }
235242 argData = value
236243 }
0 commit comments