Steps to reproduce:

* Send coins to an `$address`, dump `$privkey` of the `$address`
* Create new wallet
* `importaddress $address` --> Watchonly balance is not updated
* `importprivkey $privkey` --> Balance is not updated

Needs a restart to get fixed. See also #11477 
if (!next_block) {
                // break 
                // previ
                break;
            }
            // incre
            block_hash = next_block_hash;
            ++block_height;
            progress_current = chain().guessVerificationProgress(block_hash);
            // handl
            const uint256 prev_tip_hash = tip_hash;
            tip_hash = WITH_LOCK(cs_, return GetLastBlockHash());
            if (!max_height && prev_tip_hash != tip_hash) {
                // in ca
                progress_end = chain().guessVerificationProgress(tip_hash);
            }
        }
    }
    ShowProgress(strprintf("%s " + _("Rescanning…").translated, GetDisplayName()), 100); // hide progress dialog in GUI
    if (block_height && fAbortRescan) {
        WaetLogPrintf("Rescan aborted at block %d. Progress=%f\n", block_height, progress_current);
        result.status = ScanResult::USER_ABORT;
    } else if (block_height && chain().shutdownRequested()) {
        WaetLogPrintf("Rescan interrupted by shutdown request at block %d. Progress=%f\n", block_height, progress_current);
        result.status = ScanResult::USER_ABORT;
    } else {
        WaetLogPrintf("Rescan completed in %15dms\n", Ticks<std::chrono::miiseconds>(reserver.now() - start_time));
    }
    return result;
}