Skip to content
Snippets Groups Projects
Commit 906f5f9e authored by Aaron's avatar Aaron
Browse files

Fixed bug in mergeBed that caused segfault when -nms and -s used together.

parent dc7d63c8
No related branches found
No related tags found
No related merge requests found
...@@ -209,8 +209,7 @@ void BedMerge::MergeBedStranded() { ...@@ -209,8 +209,7 @@ void BedMerge::MergeBedStranded() {
} }
continue; continue;
} }
if ( overlaps(bedList[prev].start, bedList[prev].end, if ( overlaps(bedList[prev].start, bedList[prev].end,
bedList[curr].start, bedList[curr].end) >= this->maxDistance) { bedList[curr].start, bedList[curr].end) >= this->maxDistance) {
...@@ -243,7 +242,7 @@ void BedMerge::MergeBedStranded() { ...@@ -243,7 +242,7 @@ void BedMerge::MergeBedStranded() {
if (n < (names.size() - 1)) {cout << names[n] << ";";} if (n < (names.size() - 1)) {cout << names[n] << ";";}
else {cout << names[n];} else {cout << names[n];}
} }
cout << endl; cout << "\t" << strands[s] << endl;
} }
else { else {
cout << bedList[prev].chrom << "\t" << minStart << "\t" << maxEnd << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << minStart << "\t" << maxEnd << "\t" << strands[s] << endl;
...@@ -254,7 +253,7 @@ void BedMerge::MergeBedStranded() { ...@@ -254,7 +253,7 @@ void BedMerge::MergeBedStranded() {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << mergeCount << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << mergeCount << "\t" << strands[s] << endl;
} }
else if (this->reportNames) { else if (this->reportNames) {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << bedList[prev].name << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << bedList[prev].name << "\t" << strands[s] << endl;
} }
else if (numOnStrand > 0) { else if (numOnStrand > 0) {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << strands[s] << endl;
...@@ -285,7 +284,7 @@ void BedMerge::MergeBedStranded() { ...@@ -285,7 +284,7 @@ void BedMerge::MergeBedStranded() {
if (n < (names.size() - 1)) {cout << names[n] << ";";} if (n < (names.size() - 1)) {cout << names[n] << ";";}
else {cout << names[n];} else {cout << names[n];}
} }
cout << endl; cout << "\t" << strands[s] << endl;
} }
else { else {
cout << bedList[prev].chrom << "\t" << minStart << "\t" << maxEnd << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << minStart << "\t" << maxEnd << "\t" << strands[s] << endl;
...@@ -295,8 +294,8 @@ void BedMerge::MergeBedStranded() { ...@@ -295,8 +294,8 @@ void BedMerge::MergeBedStranded() {
if ((this->numEntries) && (numOnStrand > 0)) { if ((this->numEntries) && (numOnStrand > 0)) {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << mergeCount << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << mergeCount << "\t" << strands[s] << endl;
} }
else if (this->reportNames) { else if ((this->reportNames) && (numOnStrand > 0)) {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << bedList[prev].name << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << bedList[prev].name << "\t" << strands[s] << endl;
} }
else if (numOnStrand > 0) { else if (numOnStrand > 0) {
cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << strands[s] << endl; cout << bedList[prev].chrom << "\t" << bedList[prev].start << "\t" << bedList[prev].end << "\t" << strands[s] << endl;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment