[med-svn] [htslib] 08/13: Fixed crash in CRAM generation with cigar ops > 2^27 in size.

Andreas Tille tille at debian.org
Sat Jan 30 13:23:57 UTC 2016


This is an automated email from the git hooks/post-receive script.

tille pushed a commit to branch master
in repository htslib.

commit 92654ef705687e9d5f02ac9dd345f03c1575d290
Author: James Bonfield <jkb at sanger.ac.uk>
Date:   Tue Jan 26 14:21:58 2016 +0000

    Fixed crash in CRAM generation with cigar ops > 2^27 in size.
---
 cram/cram_encode.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/cram/cram_encode.c b/cram/cram_encode.c
index b12ef61..183c4ab 100644
--- a/cram/cram_encode.c
+++ b/cram/cram_encode.c
@@ -2588,7 +2588,7 @@ static int process_one_read(cram_fd *fd, cram_container *c,
 
     /* Copy and parse */
     if (!(cr->flags & BAM_FUNMAP)) {
-	int32_t *cig_to, *cig_from;
+	uint32_t *cig_to, *cig_from;
 	int apos = cr->apos-1, spos = 0;
 
 	cr->cigar       = s->ncigar;
@@ -2600,14 +2600,14 @@ static int process_one_read(cram_fd *fd, cram_container *c,
 		return -1;
 	}
 
-	cig_to = (int32_t *)s->cigar;
-	cig_from = (int32_t *)bam_cigar(b);
+	cig_to = (uint32_t *)s->cigar;
+	cig_from = (uint32_t *)bam_cigar(b);
 
 	cr->feature = 0;
 	cr->nfeature = 0;
 	for (i = 0; i < cr->ncigar; i++) {
 	    enum cigar_op cig_op = cig_from[i] & BAM_CIGAR_MASK;
-	    int cig_len = cig_from[i] >> BAM_CIGAR_SHIFT;
+	    uint32_t cig_len = cig_from[i] >> BAM_CIGAR_SHIFT;
 	    cig_to[i] = cig_from[i];
 
 	    /* Can also generate events from here for CRAM diffs */

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/htslib.git



More information about the debian-med-commit mailing list