@@ -163,66 +163,63 @@ void MessageLogger::HandleMessage(const LogMessageEnvelope &envelope,
163163 // Send to a logging handler if provided.
164164 if (g_log_handler != NULL ) {
165165 g_log_handler (envelope, message);
166- // TODO: should we abort() at 'assert_failed' or 'error'?
167- return ;
168- }
169- // Otherwise, we use the default Kaldi logging.
170-
171- // Build the log-message 'header',
172- std::stringstream header;
173- if (envelope.severity > LogMessageEnvelope::kInfo ) {
174- header << " VLOG[" << envelope.severity << " ] (" ;
175166 } else {
176- switch (envelope.severity ) {
177- case LogMessageEnvelope::kInfo :
178- header << " LOG (" ;
179- break ;
180- case LogMessageEnvelope::kWarning :
181- header << " WARNING (" ;
182- break ;
183- case LogMessageEnvelope::kError :
184- header << " ERROR (" ;
185- break ;
186- case LogMessageEnvelope::kAssertFailed :
187- header << " ASSERTION_FAILED (" ;
188- break ;
189- default :
190- abort (); // coding errror (unknown 'severity'),
167+ // Otherwise, we use the default Kaldi logging.
168+ // Build the log-message 'header',
169+ std::stringstream header;
170+ if (envelope.severity > LogMessageEnvelope::kInfo ) {
171+ header << " VLOG[" << envelope.severity << " ] (" ;
172+ } else {
173+ switch (envelope.severity ) {
174+ case LogMessageEnvelope::kInfo :
175+ header << " LOG (" ;
176+ break ;
177+ case LogMessageEnvelope::kWarning :
178+ header << " WARNING (" ;
179+ break ;
180+ case LogMessageEnvelope::kError :
181+ header << " ERROR (" ;
182+ break ;
183+ case LogMessageEnvelope::kAssertFailed :
184+ header << " ASSERTION_FAILED (" ;
185+ break ;
186+ default :
187+ abort (); // coding errror (unknown 'severity'),
188+ }
191189 }
192- }
193- // fill the other info from the envelope,
194- header << GetProgramName () << envelope.func << " ():"
195- << envelope.file << ' :' << envelope.line << " )" ;
196-
197- // In following lines we decide what to do,
198- if (envelope.severity >= LogMessageEnvelope::kWarning ) {
199- // VLOG, LOG, WARNING:
200- // print to stderr,
201- fprintf (stderr, " %s %s\n " , header.str ().c_str (), message);
202- } else if (envelope.severity == LogMessageEnvelope::kError ) {
203- // ERROR:
204- // print to stderr (with stack-trace),
205- fprintf (stderr, " %s %s\n\n %s\n " , header.str ().c_str (), message,
206- KaldiGetStackTrace ().c_str ());
207- if (!std::uncaught_exception ()) {
208- // throw exception with empty message,
209- throw std::runtime_error (" " );
190+ // fill the other info from the envelope,
191+ header << GetProgramName () << envelope.func << " ():"
192+ << envelope.file << ' :' << envelope.line << " )" ;
193+
194+ // Printing the message,
195+ if (envelope.severity >= LogMessageEnvelope::kWarning ) {
196+ // VLOG, LOG, WARNING:
197+ fprintf (stderr, " %s %s\n " , header.str ().c_str (), message);
210198 } else {
211- // If we got here, this thread has already thrown exception,
212- // and this exception has not yet arrived to its 'catch' clause...
213- // Throwing a new exception would be unsafe!
214- // (can happen during 'stack unwinding', if we have 'KALDI_ERR << msg'
215- // in a destructor of some local object).
216- abort ();
199+ // ERROR, ASSERT_FAILED (print with stack-trace):
200+ fprintf (stderr, " %s %s\n\n %s\n " , header.str ().c_str (), message,
201+ KaldiGetStackTrace ().c_str ());
217202 }
218- } else if (envelope.severity == LogMessageEnvelope::kAssertFailed ) {
219- // ASSERT_FAILED:
220- // print to stderr (with stack-trace), call abort(),
221- fprintf (stderr, " %s %s\n\n %s\n " , header.str ().c_str (), message,
222- KaldiGetStackTrace ().c_str ());
223- abort ();
224- } else {
225- abort (); // coding error (unknown 'severity'),
203+ }
204+
205+ // Should we throw exception, or abort?
206+ switch (envelope.severity ) {
207+ case LogMessageEnvelope::kAssertFailed :
208+ abort (); // ASSERT_FAILED,
209+ break ;
210+ case LogMessageEnvelope::kError :
211+ if (!std::uncaught_exception ()) {
212+ // throw exception with empty message,
213+ throw std::runtime_error (" " ); // KALDI_ERR,
214+ } else {
215+ // If we got here, this thread has already thrown exception,
216+ // and this exception has not yet arrived to its 'catch' clause...
217+ // Throwing a new exception would be unsafe!
218+ // (can happen during 'stack unwinding', if we have 'KALDI_ERR << msg'
219+ // in a destructor of some local object).
220+ abort ();
221+ }
222+ break ;
226223 }
227224}
228225
0 commit comments