🐛 bug: patch loader
							parent
							
								
									46cf5837bc
								
							
						
					
					
						commit
						ae858ebe70
					
				|  | @ -296,24 +296,27 @@ pub fn parse_block <R: Read> (rdr: &mut R, blocks: &mut Vec <Block>) | |||
| 	// I think this is delta line numbers, e.g. most instructions
 | ||||
| 	// have 0, but when you go to a new source line it's 1+.
 | ||||
| 	
 | ||||
| 	let lineinfo_count = parse_int (rdr).unwrap (); | ||||
| 	let lineinfo_count = load_size (rdr); | ||||
| 	for _ in 0..lineinfo_count { | ||||
| 		parse_byte (rdr).unwrap (); | ||||
| 	} | ||||
| 	
 | ||||
| 	// Absolute line info, didn't see that in my test files
 | ||||
| 	
 | ||||
| 	let abslineinfo_count = parse_int (rdr).unwrap (); | ||||
| 	assert_eq! (abslineinfo_count, 0); | ||||
| 	
 | ||||
| 	let local_count = parse_int (rdr).unwrap (); | ||||
| 	for _ in 0..local_count { | ||||
| 		parse_string(rdr).unwrap (); | ||||
| 		parse_int (rdr).unwrap (); | ||||
| 		parse_int (rdr).unwrap (); | ||||
| 	let abslineinfo_count = load_size (rdr); | ||||
| 	for _ in 0..abslineinfo_count { | ||||
| 		load_unsigned (rdr, usize::MAX); | ||||
| 		load_unsigned (rdr, usize::MAX); | ||||
| 	} | ||||
| 	
 | ||||
| 	let upvalue_count = parse_int (rdr).unwrap (); | ||||
| 	let local_count = load_size (rdr); | ||||
| 	for _ in 0..local_count { | ||||
| 		parse_string(rdr); | ||||
| 		load_unsigned (rdr, usize::MAX); | ||||
| 		load_unsigned (rdr, usize::MAX); | ||||
| 	} | ||||
| 	
 | ||||
| 	let upvalue_count = load_size (rdr); | ||||
| 	for _ in 0..upvalue_count { | ||||
| 		parse_string (rdr).unwrap (); | ||||
| 	} | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 _
						_