|  |  |  | @ -53,7 +53,7 @@ use std::{ | 
		
	
		
			
				|  |  |  |  |     fmt::{LowerHex, UpperHex}, | 
		
	
		
			
				|  |  |  |  |     io, mem, | 
		
	
		
			
				|  |  |  |  |     net::{Ipv4Addr, Ipv6Addr}, | 
		
	
		
			
				|  |  |  |  |     ptr, slice, str, | 
		
	
		
			
				|  |  |  |  |     ptr, str, | 
		
	
		
			
				|  |  |  |  |     sync::Arc, | 
		
	
		
			
				|  |  |  |  | }; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
	
		
			
				
					|  |  |  | @ -412,10 +412,11 @@ fn log_buf(mut buf: &[u8], logger: &dyn Log) -> Result<(), ()> { | 
		
	
		
			
				|  |  |  |  |                 full_log_msg.push_str(&value.format(last_hint.take())?); | 
		
	
		
			
				|  |  |  |  |             } | 
		
	
		
			
				|  |  |  |  |             Argument::ArrU16Len8 => { | 
		
	
		
			
				|  |  |  |  |                 let ptr = attr.value.as_ptr().cast::<u16>(); | 
		
	
		
			
				|  |  |  |  |                 let slice = unsafe { slice::from_raw_parts(ptr, 8) }; | 
		
	
		
			
				|  |  |  |  |                 let data: [u8; 16] = attr.value.try_into().map_err(|_| ())?; | 
		
	
		
			
				|  |  |  |  |                 let mut value: [u16; 8] = Default::default(); | 
		
	
		
			
				|  |  |  |  |                 value.copy_from_slice(slice); | 
		
	
		
			
				|  |  |  |  |                 for (i, s) in data.chunks_exact(2).enumerate() { | 
		
	
		
			
				|  |  |  |  |                     value[i] = ((s[1] as u16) << 8) | s[0] as u16; | 
		
	
		
			
				|  |  |  |  |                 } | 
		
	
		
			
				|  |  |  |  |                 full_log_msg.push_str(&value.format(last_hint.take())?); | 
		
	
		
			
				|  |  |  |  |             } | 
		
	
		
			
				|  |  |  |  |             Argument::Str => match str::from_utf8(attr.value) { | 
		
	
	
		
			
				
					|  |  |  | 
 |