diff --git a/CHANGES.md b/CHANGES.md index 396861dc..b16f7e98 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,4 @@ +* Issue #1543: Fixed a segfault occurring for STARsolo multimappers and large number of reads per cell. * Issue #1558: Fixed a bug with output of GX/GN BAM tags without CB/UB. * Fixed a bug with --soloMultiMappers for small number of cells cases. * Issue #1513: If --soloMultiMappers options are not requested, output "NoMulti" in the "Reads Mapped to Gene: Unique+Multiple Gene" line of the Summary.csv file. diff --git a/source/SoloFeature_collapseUMIall_multiMappers.cpp b/source/SoloFeature_collapseUMIall_multiMappers.cpp index 9023bbd7..269142a8 100644 --- a/source/SoloFeature_collapseUMIall_multiMappers.cpp +++ b/source/SoloFeature_collapseUMIall_multiMappers.cpp @@ -17,8 +17,8 @@ void SoloFeature::collapseUMIall(uint32 iCB, uint32 *umiArray) uint32 gid1 = -1;//current gID uint32 nGenes = 0, nGenesMult = 0; //number of genes - uint32 *gID = new uint32[min(featuresNumber,rN)+1]; //gene IDs - uint32 *gReadS = new uint32[min(featuresNumber,rN)+1]; //start of gene reads TODO: allocate this array in the 2nd half of rGU + uint32 *gID = new uint32[min(2*featuresNumber,rN)+1]; //gene IDs, 2* is needed because each gene can have unique and multi-mappers + uint32 *gReadS = new uint32[min(2*featuresNumber,rN)+1]; //start of gene reads TODO: allocate this array in the 2nd half of rGU for (uint32 iR=0; iR