Starting with txindex option produces a bug continually printing "y".

```
sudo apt-add-repository ppa:bitcoin/bitcoin
sudo apt-get update
bitcoind -daemon -txindex=1 -server=1 &
root@btc:~# Bitcoin server starting
: You need to rebuild the database using -reindex to change -txindex.

Do you want to rebuild the block database now?
yes
y
y
y
y
y
```

break;
            }
        }
        if (linked)
        {
            fReindex = true;
        }
    }
    
    int64_t nTotalCache = (GetArg("-dbcache", nDefaultDbCache) << 20);
    nTotalCache = std::max(nTotalCache, nMinDbCache << 20); 
    nTotalCache = std::min(nTotalCache, nMaxDbCache << 20); 
    int64_t nBlockTreeDBCache = nTotalCache / 8;
    if (nBlockTreeDBCache > (1 << 21) && !GetBoolArg("-txindex", DEFAULT_TXINDEX))
        nBlockTreeDBCache = (1 << 21); 
    nTotalCache -= nBlockTreeDBCache;
    int64_t nCoinDBCache = std::min(nTotalCache / 2, (nTotalCache / 4) + (1 << 23)); 
    nTotalCache -= nCoinDBCache;
    nCoinCacheUsage = nTotalCache; 
    LogPrintf("Cache configuration:\n");
    LogPrintf("* Using %.1fMiB for block index database\n", nBlockTreeDBCache * (1.0 / 1024 / 1024));
    LogPrintf("* Using %.1fMiB for chain state database\n", nCoinDBCache * (1.0 / 1024 / 1024));
    LogPrintf("* Using %.1fMiB for in-memory UTXO set\n", nCoinCacheUsage * (1.0 / 1024 / 1024));
    bool fLoaded = false;
    while (!fLoaded) {
        bool fReset = fReindex;
        std::string strLoadError;
        uiInterface.InitMessage(_("Loading block index..."));
        nStart = GetTimeMillis();
        do {