@ -1655,13 +1655,12 @@ bool UndoReadFromDisk(CBlockUndo& blockundo, const CBlockIndex* pindex)
}
/** Abort with a message */
// TODO: AbortNode() should take bilingual_str userMessage parameter.
static bool AbortNode ( const std : : string & strMessage , const std : : string & userMessage = " " , unsigned int prefix = 0 )
static bool AbortNode ( const std : : string & strMessage , const bilingual_str & userMessage = bilingual_str ( ) , unsigned int prefix = 0 )
{
SetMiscWarning ( strMessage ) ;
LogPrintf ( " *** %s \n " , strMessage ) ;
if ( ! userMessage . empty ( ) ) {
uiInterface . ThreadSafeMessageBox ( Untranslated( userMessage) , " " , CClientUIInterface : : MSG_ERROR | prefix ) ;
uiInterface . ThreadSafeMessageBox ( userMessage, " " , CClientUIInterface : : MSG_ERROR | prefix ) ;
} else {
uiInterface . ThreadSafeMessageBox ( _ ( " Error: A fatal internal error occurred, see debug.log for details " ) , " " , CClientUIInterface : : MSG_ERROR | CClientUIInterface : : MSG_NOPREFIX ) ;
}
@ -1669,7 +1668,7 @@ static bool AbortNode(const std::string& strMessage, const std::string& userMess
return false ;
}
static bool AbortNode ( BlockValidationState & state , const std : : string & strMessage , const std: : string & userMessage = " " , unsigned int prefix = 0 )
static bool AbortNode ( BlockValidationState & state , const std : : string & strMessage , const bilingual_str& userMessage = bilingual_str ( ) , unsigned int prefix = 0 )
{
AbortNode ( strMessage , userMessage , prefix ) ;
return state . Error ( strMessage ) ;
@ -2336,7 +2335,7 @@ bool CChainState::FlushStateToDisk(
if ( fDoFullFlush | | fPeriodicWrite ) {
// Depend on nMinDiskSpace to ensure we can write block index
if ( ! CheckDiskSpace ( GetBlocksDir ( ) ) ) {
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) .translated , CClientUIInterface : : MSG_NOPREFIX ) ;
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) , CClientUIInterface : : MSG_NOPREFIX ) ;
}
{
LOG_TIME_MILLIS_WITH_CATEGORY ( " write block and undo data to disk " , BCLog : : BENCH ) ;
@ -2384,7 +2383,7 @@ bool CChainState::FlushStateToDisk(
// an overestimation, as most will delete an existing entry or
// overwrite one. Still, use a conservative safety factor of 2.
if ( ! CheckDiskSpace ( GetDataDir ( ) , 48 * 2 * 2 * CoinsTip ( ) . GetCacheSize ( ) ) ) {
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) .translated , CClientUIInterface : : MSG_NOPREFIX ) ;
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) , CClientUIInterface : : MSG_NOPREFIX ) ;
}
// Flush the chainstate (which may refer to block index entries).
if ( ! CoinsTip ( ) . Flush ( ) )
@ -3291,7 +3290,7 @@ static bool FindBlockPos(FlatFilePos &pos, unsigned int nAddSize, unsigned int n
bool out_of_space ;
size_t bytes_allocated = BlockFileSeq ( ) . Allocate ( pos , nAddSize , out_of_space ) ;
if ( out_of_space ) {
return AbortNode ( " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) .translated , CClientUIInterface : : MSG_NOPREFIX ) ;
return AbortNode ( " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) , CClientUIInterface : : MSG_NOPREFIX ) ;
}
if ( bytes_allocated ! = 0 & & fPruneMode ) {
fCheckForPruning = true ;
@ -3315,7 +3314,7 @@ static bool FindUndoPos(BlockValidationState &state, int nFile, FlatFilePos &pos
bool out_of_space ;
size_t bytes_allocated = UndoFileSeq ( ) . Allocate ( pos , nAddSize , out_of_space ) ;
if ( out_of_space ) {
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) .translated , CClientUIInterface : : MSG_NOPREFIX ) ;
return AbortNode ( state , " Disk space is too low! " , _ ( " Error: Disk space is too low! " ) , CClientUIInterface : : MSG_NOPREFIX ) ;
}
if ( bytes_allocated ! = 0 & & fPruneMode ) {
fCheckForPruning = true ;