Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree #15583
Steps to reproduce the issue:
# 1. create directory for -walletdir without read access: mkdir /tmp/foo && chmod a-r /tmp/foo # 2. run bitcoin-qt and should print an error, but continues running: /Volumes/Bitcoin-Core/Bitcoin-Qt.app/Contents/MacOS/Bitcoin-Qt -regtest -walletdir=/tmp/foo /private/tmp/foo: Permission denied # 4. go to File -> Open Wallet and should segfault: EXCEPTION: N5boost10filesystem16filesystem_errorE boost::filesystem::directory_iterator::construct: Permission denied: "/private/tmp/foo" bitcoin in Runaway exception
Thanks for catching this @kiv06041992. I was able to reproduce with v0.18.0rc1 binary, as well as when building master from source.
This commit fixes it, so tACK 8de53d5 (test would be nice).
I'm even able to create a new wallet and use it, and the wallet will be hidden next time you start (no idea why one would want that).
@promag can you copy the steps to reproduce to the description?
EDIT: It looks like failing to increment shouldn't cause infinite loops since
Gitian builds for commit c3b1cb9 (master):
Gitian builds for commit dab434c (master and this pull):
Mar 13, 2019
Mar 14, 2019
Gitian builds for commit 8e1704c (master):
Gitian builds for commit f5095fb (master and this pull):