@@ -358,9 +358,9 @@ impl Record {
358358
359359 let orig_aux_offset = self . qname_capacity ( )
360360 + 4 * self . cigar_len ( )
361- + ( self . seq_len ( ) + 1 ) / 2
361+ + self . seq_len ( ) . div_ceil ( 2 )
362362 + self . seq_len ( ) ;
363- let new_aux_offset = q_len + extranul + cigar_width + ( seq. len ( ) + 1 ) / 2 + qual. len ( ) ;
363+ let new_aux_offset = q_len + extranul + cigar_width + seq. len ( ) . div_ceil ( 2 ) + qual. len ( ) ;
364364 assert ! ( orig_aux_offset <= self . inner. l_data as usize ) ;
365365 let aux_len = self . inner . l_data as usize - orig_aux_offset;
366366 self . inner_mut ( ) . l_data = ( new_aux_offset + aux_len) as i32 ;
@@ -416,7 +416,7 @@ impl Record {
416416 } ) ;
417417 }
418418 self . inner_mut ( ) . core . l_qseq = seq. len ( ) as i32 ;
419- i += ( seq. len ( ) + 1 ) / 2 ;
419+ i += seq. len ( ) . div_ceil ( 2 ) ;
420420 }
421421
422422 // qual
@@ -564,7 +564,7 @@ impl Record {
564564
565565 fn seq_data ( & self ) -> & [ u8 ] {
566566 let offset = self . qname_capacity ( ) + self . cigar_len ( ) * 4 ;
567- & self . data ( ) [ offset..] [ ..( self . seq_len ( ) + 1 ) / 2 ]
567+ & self . data ( ) [ offset..] [ ..self . seq_len ( ) . div_ceil ( 2 ) ]
568568 }
569569
570570 /// Get read sequence. Complexity: O(1).
@@ -579,7 +579,7 @@ impl Record {
579579 /// This does not entail any offsets, hence the qualities can be used directly without
580580 /// e.g. subtracting 33. Complexity: O(1).
581581 pub fn qual ( & self ) -> & [ u8 ] {
582- & self . data ( ) [ self . qname_capacity ( ) + self . cigar_len ( ) * 4 + ( self . seq_len ( ) + 1 ) / 2 ..]
582+ & self . data ( ) [ self . qname_capacity ( ) + self . cigar_len ( ) * 4 + self . seq_len ( ) . div_ceil ( 2 ) ..]
583583 [ ..self . seq_len ( ) ]
584584 }
585585
@@ -787,7 +787,7 @@ impl Record {
787787 // CIGAR (uint32_t):
788788 + self . cigar_len ( ) * std:: mem:: size_of :: < u32 > ( )
789789 // Read sequence (4-bit encoded):
790- + ( self . seq_len ( ) + 1 ) / 2
790+ + self . seq_len ( ) . div_ceil ( 2 )
791791 // Base qualities (char):
792792 + self . seq_len ( ) ..] ,
793793 }
0 commit comments