@@ -191,16 +191,23 @@ fn print_backtrace(backtrace: &mut Backtrace) -> String {
191191 write ! ( trace_text, "backtrace frames: {}\n " , backtrace. frames( ) . len( ) ) . unwrap ( ) ;
192192 ' frames: for ( i, frame) in backtrace. frames ( ) . iter ( ) . enumerate ( ) {
193193 if frame. symbols ( ) . is_empty ( ) {
194- write ! ( trace_text, "{}: no symbols\n " , i) . unwrap ( ) ;
194+ write ! ( trace_text, " {}: no symbols\n " , i) . unwrap ( ) ;
195195 }
196+ let mut first = true ;
196197 for symbol in frame. symbols ( ) {
197- write ! ( trace_text, "{}: " , i) . unwrap ( ) ;
198+ if first {
199+ write ! ( trace_text, " {}: " , i) . unwrap ( ) ;
200+ first = false ;
201+ } else {
202+ let len = i. to_string ( ) . len ( ) ;
203+ write ! ( trace_text, " {} " , " " . repeat( len) ) . unwrap ( ) ;
204+ }
198205 if let Some ( name) = symbol. name ( ) {
199206 write ! ( trace_text, "{}\n " , name) . unwrap ( ) ;
200207 } else {
201208 write ! ( trace_text, "<unknown>\n " ) . unwrap ( ) ;
202209 }
203- write ! ( trace_text, "\t at " ) . unwrap ( ) ;
210+ write ! ( trace_text, " at " ) . unwrap ( ) ;
204211 if let Some ( file_path) = symbol. filename ( ) {
205212 write ! ( trace_text, "{}" , file_path. display( ) ) . unwrap ( ) ;
206213 } else {
0 commit comments