Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
df383add
Unverified
Commit
df383add
authored
Mar 25, 2023
by
norwnd
Committed by
GitHub
Mar 25, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ethclient: ensure returned subscription is nil on error (#26976)
parent
792d893e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
2 deletions
+16
-2
ethclient.go
ethclient/ethclient.go
+16
-2
No files found.
ethclient/ethclient.go
View file @
df383add
...
...
@@ -320,7 +320,14 @@ func (ec *Client) SyncProgress(ctx context.Context) (*ethereum.SyncProgress, err
// SubscribeNewHead subscribes to notifications about the current blockchain head
// on the given channel.
func
(
ec
*
Client
)
SubscribeNewHead
(
ctx
context
.
Context
,
ch
chan
<-
*
types
.
Header
)
(
ethereum
.
Subscription
,
error
)
{
return
ec
.
c
.
EthSubscribe
(
ctx
,
ch
,
"newHeads"
)
sub
,
err
:=
ec
.
c
.
EthSubscribe
(
ctx
,
ch
,
"newHeads"
)
if
err
!=
nil
{
// Defensively prefer returning nil interface explicitly on error-path, instead
// of letting default golang behavior wrap it with non-nil interface that stores
// nil concrete type value.
return
nil
,
err
}
return
sub
,
nil
}
// State Access
...
...
@@ -389,7 +396,14 @@ func (ec *Client) SubscribeFilterLogs(ctx context.Context, q ethereum.FilterQuer
if
err
!=
nil
{
return
nil
,
err
}
return
ec
.
c
.
EthSubscribe
(
ctx
,
ch
,
"logs"
,
arg
)
sub
,
err
:=
ec
.
c
.
EthSubscribe
(
ctx
,
ch
,
"logs"
,
arg
)
if
err
!=
nil
{
// Defensively prefer returning nil interface explicitly on error-path, instead
// of letting default golang behavior wrap it with non-nil interface that stores
// nil concrete type value.
return
nil
,
err
}
return
sub
,
nil
}
func
toFilterArg
(
q
ethereum
.
FilterQuery
)
(
interface
{},
error
)
{
...
...
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