Browse Source

尝试解决err问题

skyfffire 2 years ago
parent
commit
458eb96b11
1 changed files with 5 additions and 7 deletions
  1. 5 7
      internal/ethapi/api.go

+ 5 - 7
internal/ethapi/api.go

@@ -1027,20 +1027,18 @@ func (s *PublicBlockChainAPI) BatchCall(ctx context.Context, config BatchCallCon
 		if call.BlockOverrides != nil {
 			call.BlockOverrides.Apply(&blockContext)
 		}
-		result, _ := doCall(ctx, s.b, call.CallArgs, state, header, timeout, gp, &blockContext)
+		result, err := doCall(ctx, s.b, call.CallArgs, state, header, timeout, gp, &blockContext)
 		//if err != nil {
 		//	return nil, err
 		//}
 		// If the result contains a revert reason, try to unpack it.
-		if len(result.Revert()) > 0 {
+		if err != nil && len(result.Revert()) > 0 {
 			result.Err = newRevertError(result)
+		} else {
+			result.Err = err
 		}
-		
-		//else {
-		//	result.Err = err
-		//}
 
-		results = append(results, CallResult{Return: result.Return(), Error: result.Err})
+		results = append(results, CallResult{Return: nil, Error: result.Err})
 	}
 	return results, nil
 }