diff options
Diffstat (limited to 'src/util.h')
-rw-r--r-- | src/util.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/util.h b/src/util.h index c28380a59b..32bc050369 100644 --- a/src/util.h +++ b/src/util.h @@ -164,7 +164,6 @@ static inline bool error(const char* format) void LogException(std::exception* pex, const char* pszThread); -void PrintException(std::exception* pex, const char* pszThread); void PrintExceptionContinue(std::exception* pex, const char* pszThread); void ParseString(const std::string& str, char c, std::vector<std::string>& v); std::string FormatMoney(int64_t n, bool fPlus=false); @@ -558,10 +557,12 @@ template <typename Callable> void LoopForever(const char* name, Callable func, throw; } catch (std::exception& e) { - PrintException(&e, name); + PrintExceptionContinue(&e, name); + throw; } catch (...) { - PrintException(NULL, name); + PrintExceptionContinue(NULL, name); + throw; } } // .. and a wrapper that just calls func once @@ -581,10 +582,12 @@ template <typename Callable> void TraceThread(const char* name, Callable func) throw; } catch (std::exception& e) { - PrintException(&e, name); + PrintExceptionContinue(&e, name); + throw; } catch (...) { - PrintException(NULL, name); + PrintExceptionContinue(NULL, name); + throw; } } |