catch(...) exceptions, report it, and rethrow
This commit is contained in:
		@@ -280,6 +280,12 @@ inline void spdlog::details::async_log_helper::worker_loop()
 | 
			
		||||
        {
 | 
			
		||||
            _err_handler(ex.what());
 | 
			
		||||
        } 
 | 
			
		||||
        catch(...) 
 | 
			
		||||
        {
 | 
			
		||||
            _err_handler("Unknown exeption in worker loop. Terminating worker loop");
 | 
			
		||||
            active = false; 
 | 
			
		||||
 | 
			
		||||
        }     
 | 
			
		||||
    }
 | 
			
		||||
    if (_worker_teardown_cb) _worker_teardown_cb();
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -98,4 +98,10 @@ inline void spdlog::async_logger::_sink_it(details::log_msg& msg)
 | 
			
		||||
    {
 | 
			
		||||
        _err_handler(ex.what());
 | 
			
		||||
    }
 | 
			
		||||
    catch(...) 
 | 
			
		||||
    {
 | 
			
		||||
        _err_handler("Unknown exception in logger " + _name);
 | 
			
		||||
        throw;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -77,6 +77,10 @@ inline void spdlog::logger::log(level::level_enum lvl, const char* fmt, const Ar
 | 
			
		||||
    {
 | 
			
		||||
        _err_handler(ex.what());
 | 
			
		||||
    }
 | 
			
		||||
    catch(...) {
 | 
			
		||||
       _err_handler("Unknown exception in logger " + _name);
 | 
			
		||||
       throw;    
 | 
			
		||||
    }   
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
template <typename... Args>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user