Page MenuHomePhabricator

Merge #14556: qt: fix confirmed transaction labeled "open"
ClosedPublic

Authored by markblundeberg on Jul 1 2019, 00:34.

Details

Summary

PR14556 backport https://github.com/bitcoin/bitcoin/pull/14556/files
fb3ce75807c50055a97f573fc72bf44d997ea218 Don't label transactions "Open" while catching up (Hennadii Stepanov)

Pull request description:

Fix #13299.

Since the default `nSequence` is `0xFFFFFFFE` and locktime is enabled, the checking `wtx.is_final` is meaningless until the syncing has completed (ref: #1026).

This PR makes the wallet mark a transaction "Unconfirmed" instead of misleading "Open for NNN more blocks" when syncing after a period of being offline.

Before this PR (with the issue):
![screenshot from 2018-12-12 15-56-23](https://user-images.githubusercontent.com/32963518/49874288-cdd06880-fe26-11e8-8441-f3ceb479611b.png)

With this PR (the issue has been resolved):
![screenshot from 2018-12-12 15-54-41](https://user-images.githubusercontent.com/32963518/49874336-e9d40a00-fe26-11e8-8c05-9aeee2eb1bba.png)

Depends on D3489

Test Plan

make check
test_bitcoin-qt

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

src/chain.h
43 ↗(On Diff #9829)

I am thinking this constant should be upped due to the higher block time variance on BCH (due to heavy switch mining). But, that's for another Diff ....

Fabien requested changes to this revision.Jul 1 2019, 09:24
Fabien added inline comments.
src/qt/transactionrecord.cpp
17 ↗(On Diff #9829)

Move above #include <cstdint>

167 ↗(On Diff #9829)

Use int64_t() constructor instead of cast

This revision now requires changes to proceed.Jul 1 2019, 09:24
This revision is now accepted and ready to land.Jul 1 2019, 17:50