From 92c8bcecf02f40d18d5122e68a2650ec23e683e7 Mon Sep 17 00:00:00 2001 From: mholt Date: Tue, 21 May 2024 05:54:05 -0700 Subject: [PATCH] resets l_extranul before trying to set it --- src/bam/record_serde.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/bam/record_serde.rs b/src/bam/record_serde.rs index 651867030..1bf8a2fa1 100644 --- a/src/bam/record_serde.rs +++ b/src/bam/record_serde.rs @@ -8,6 +8,8 @@ use serde_bytes::{ByteBuf, Bytes}; use crate::bam::record::Record; fn fix_l_extranul(rec: &mut Record) { + // first, reset the number of extranuls to 0 for calling .qname(); then calculate how many we actually have + rec.inner_mut().core.l_extranul = 0; let l_extranul = rec.qname().iter().rev().take_while(|x| **x == 0u8).count() as u8; rec.inner_mut().core.l_extranul = l_extranul; }