From 9527e223ea52af559498ca2984e844c024ed6997 Mon Sep 17 00:00:00 2001 From: derek Date: Tue, 25 Sep 2012 13:02:54 -0400 Subject: [PATCH] Fixed: convert tool - improper unsigned char handling in tags --- src/toolkit/bamtools_convert.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/toolkit/bamtools_convert.cpp b/src/toolkit/bamtools_convert.cpp index 8896882..1de3a31 100644 --- a/src/toolkit/bamtools_convert.cpp +++ b/src/toolkit/bamtools_convert.cpp @@ -2,7 +2,7 @@ // bamtools_convert.cpp (c) 2010 Derek Barnett, Erik Garrison // Marth Lab, Department of Biology, Boston College // --------------------------------------------------------------------------- -// Last modified: 8 October 2011 +// Last modified: 26 September 2012 // --------------------------------------------------------------------------- // Converts between BAM and a number of other formats // *************************************************************************** @@ -434,9 +434,13 @@ void ConvertTool::ConvertToolPrivate::PrintJson(const BamAlignment& a) { ++index; break; - case (Constants::BAM_TAG_TYPE_INT8) : + case (Constants::BAM_TAG_TYPE_INT8) : + m_out << (int8_t)tagData[index]; + ++index; + break; + case (Constants::BAM_TAG_TYPE_UINT8) : - m_out << (int)tagData[index]; + m_out << (uint8_t)tagData[index]; ++index; break; @@ -566,8 +570,12 @@ void ConvertTool::ConvertToolPrivate::PrintSam(const BamAlignment& a) { break; case (Constants::BAM_TAG_TYPE_INT8) : + m_out << "i:" << (int8_t)tagData[index]; + ++index; + break; + case (Constants::BAM_TAG_TYPE_UINT8) : - m_out << "i:" << (int)tagData[index]; + m_out << "i:" << (uint8_t)tagData[index]; ++index; break; -- 2.39.2