Steps to reproduce:

* Create a datadir that is pruned
* Start with `-prune=550 -reindex-chainstate`
* Hangs with idle CPU

(`-reindex` works)
"This may be due to your computer's date and time being set incorrectly. "
                                     "Only rebuild the block database if you are sure that your computer's date and time are correct");
                    break;
                case ChainstateLoadVerifyError::ERROR_CORRUPTED_BLOCK_DB:
                    strLoadError = _("Corrupted block database detected");
                    break;
                case ChainstateLoadVerifyError::ERROR_GENERIC_FAILURE:
                    strLoadError = _("Error opening block database");
                    break;
                }
            } else {
                fLoaded = true;
                LogPrintf(" block index %15dms\n", GetTimeMillis() - load_block_index_start_time);
            }
        }
        if (!fLoaded && !ShutdownRequested()) {
             fir
            if (!fReset) {
                bool fRet = uiInterface.ThreadSafeQuestion(
                    strLoadError + Untranslated(".\n\n") + _("Do you want to rebuild the block database now?"),
                    strLoadError.original + ".\nPlease restart with -reindex or -reindex-chainstate to recover.",
                    "", CClientUIInterface::MSG_ERROR | CClientUIInterface::BTN_ABORT);
                if (fRet) {
                    fReindex = true;
                    AbortShutdown();
                } else {
                    LogPrintf("Aborted block database rebuild. Exiting.\n");
                    return false;
                }
            } else {