Wladimir J. van der Laan 7fa1f6258c
Merge #15583: wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree
15c69b158da570f4e1430280c610e94ffdee0e51 wallet: Log and ignore errors in ListWalletDir and IsBerkeleyBtree (João Barbosa)

Pull request description:

  Use the `noexcept` members of `boost::filesystem::recursive_directory_iterator` in order to ignore `boost::filesystem::directory_iterator::construct: Permission denied` errors. The errors are logged though.

  Steps to reproduce the issue:

  ```sh
  # 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
  ```

Tree-SHA512: 37e8bf5a1e0defc331030fd511bf9cac2765d01dfbf23e7233f37506e85b8ad07edcde9ba6dae7a2c95700c78d28c7dd248153607381852da96273cb159c4934
2019-03-14 18:58:43 +01:00
..
2019-02-25 10:13:23 -05:00
2019-01-26 12:45:48 -05:00
2019-02-16 21:39:32 +01:00
2018-09-07 08:21:14 -04:00
2019-01-16 13:54:18 -05:00
2018-12-29 10:15:01 +01:00
2019-02-06 14:16:43 -05:00
2018-07-27 07:15:02 -04:00
2018-08-13 13:57:15 +02:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00
2019-01-24 19:47:07 -08:00
2018-07-27 07:15:02 -04:00
2018-09-04 13:11:26 +02:00
2019-02-04 12:20:42 +00:00
2019-02-22 17:38:45 -08:00
2019-02-22 17:38:45 -08:00
2018-12-29 10:15:01 +01:00
2018-08-11 09:34:47 +03:00
2018-07-27 07:15:02 -04:00
2019-01-31 15:00:56 +00:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00
2019-01-18 00:34:47 +00:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00
2019-01-24 15:58:49 -08:00
2018-07-27 07:15:02 -04:00
2018-12-29 10:15:01 +01:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00
2018-11-14 12:19:28 -05:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00
2019-02-25 10:12:29 -05:00
2018-07-27 11:52:18 -07:00
2018-12-14 16:26:13 -05:00
2018-07-27 07:15:02 -04:00
2018-03-21 08:34:44 +02:00
2018-07-27 07:15:02 -04:00
2018-07-27 07:15:02 -04:00