Fix #15453. It is fixed by #16348 (comment)
The only reason of these lines on master (8c69fae94410f54bad13be0f34d54370fddbf4b3)
https://github.com/bitcoin/bitcoin/blob/2679bb8919b5089f8067ccfd94f766747b8df671/src/qt/walletcontroller.cpp#L121-L128
is to Q_EMIT walletAdded(wallet_model);
in a thread-safe manner;
This PR makes this in a line of code: https://github.com/bitcoin/bitcoin/blob/1b83875006749d79916af0197bed65aecdc7ff17/src/qt/walletcontroller.cpp#L121
EDITED:
To establish the ownership of a new WalletModel
object is not necessary on the master (https://github.com/bitcoin/bitcoin/pull/16349#discussion_r301679192 by promag).
But:
it’s good habit to set ownership
And I agree. It is a safe practice.