Page MenuHomePhabricator

init: Factor out AppInitLockDataDirectory
ClosedPublic

Authored by jasonbcox on Oct 12 2018, 22:01.

Details

Summary

Alternative to #10818, alternative solution to #10815.

After this change: All the AppInit steps before and inclusive
AppInitLockDataDirectory must not have Shutdown() called in case of
failure. Only when AppInitMain fails, Shutdown should be called.

Changes the GUI and bitcoind code to consistently do this.

Backport of Core PR 10832.
Completes T426

Co-authored-by: Jason B. Cox <contact@jasonbcox.com>

Test Plan

ninja && test_runner.py

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

jasonbcox created this revision.Oct 12 2018, 22:01
Herald added a reviewer: Restricted Project. · View Herald TranscriptOct 12 2018, 22:02
deadalnix requested changes to this revision.Oct 14 2018, 19:03
deadalnix added inline comments.
src/qt/bitcoin.cpp
783 ↗(On Diff #5406)

Remove. We don't support older version of Qt.

790 ↗(On Diff #5406)

Revert

This revision now requires changes to proceed.Oct 14 2018, 19:03
jasonbcox updated this revision to Diff 5422.Oct 15 2018, 21:45

Fixed according to feedback

jasonbcox updated this revision to Diff 5423.Oct 15 2018, 22:42

Fixed build. Apparently cmake wasn't building the qt directory properly. I'll continue to investigate...

deadalnix accepted this revision.Oct 16 2018, 07:56
This revision is now accepted and ready to land.Oct 16 2018, 07:56
This revision was automatically updated to reflect the committed changes.