diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2018-04-09 05:50:26 +0200 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2018-04-09 05:57:19 +0200 |
commit | 4781813b56177f8cfc1bf3d4160f75f3ec15e7e2 (patch) | |
tree | e76f7df8fb6bdd8682ad315b590878238694569c /src/support/lockedpool.cpp | |
parent | 27278dffe877ab95488f2e0fada53edb9590487f (diff) | |
parent | b120f7bdbee83c00e46a9ec6d0cd09a816631f45 (diff) | |
download | bitcoin-4781813b56177f8cfc1bf3d4160f75f3ec15e7e2.tar.xz |
Merge #12537: [arith_uint256] Make it safe to use "self" in operators
b120f7b [test] Add tests for self usage in arith_uint256 (Karl-Johan Alm)
08b17de [arith_uint256] Do not destroy *this content if passed-in operator may reference it (Karl-Johan Alm)
Pull request description:
Before this fix (see test commit), `v *= v` would result in `0` because `operator*=` set `*this` (`==b`) to `0` at the start. This patch changes the code to use `a` as temporary for `*this`~~, with drawback that `*this` is set to `a` at the end, an extra `=` operation in other words~~.
Tree-SHA512: 8028a99880c3198a39c4bcc5056169735ba960625d553e15c0317510a52940c875f7a1fefe14e1af7fcf10c07a246411994a328cb1507bf3eaf1b6e7425390dc
Diffstat (limited to 'src/support/lockedpool.cpp')
0 files changed, 0 insertions, 0 deletions