Skip to content

Commit

Permalink
refactor: replace CNode pointers by references within net_processing.…
Browse files Browse the repository at this point in the history
…{h,cpp}

Summary:
```
This PR is inspired by a recent code review comment on a PR that
introduced new functions to the net_processing module. The point of the
discussion was basically that whenever we pass something not by value
(in the concrete example it was about CNode* and CConnman*) we should
either use

    a pointer (CType*) with null pointer check or
    a reference (CType&)

To keep things simple, this PR for a first approach

    only tackles CNode* pointers
    only within the net_processing module, i.e. no changes that would
need adaption in other modules
    keeps the names of the variables as they are

I'm aware that PRs like this are kind of a PITA to review, but I think
the code quality would increase if we get rid of pointers without
nullptr check -- bloating up the code by adding all the missing checks
would be the worse alternative, in my opinion.

Possible follow-up PRs, in case this is received well:

    replace CNode pointers by references for net module
    replace CConnman pointers by references for net_processing module
    ...
```

Backport of core [[bitcoin/bitcoin#19053 | PR19053]].

Depends on D8469.

Test Plan:
  ninja all check-all

Reviewers: #bitcoin_abc, jasonbcox

Reviewed By: #bitcoin_abc, jasonbcox

Subscribers: jasonbcox

Differential Revision: https://reviews.bitcoinabc.org/D8470
  • Loading branch information
theStack authored and Fabcien committed Nov 19, 2020
1 parent eb6fae5 commit a33c930
Show file tree
Hide file tree
Showing 3 changed files with 344 additions and 342 deletions.
Loading

0 comments on commit a33c930

Please sign in to comment.