From f7b297ff5fbd4c74261cd4e547d3918e9ef0c881 Mon Sep 17 00:00:00 2001
From: Aaron <aaronquinlan@gmail.com>
Date: Fri, 16 Sep 2011 13:54:57 -0400
Subject: [PATCH] Moved nullBed reset to GetNextBed

---
 src/intersectBed/intersectBed.cpp | 4 +---
 src/utils/bedFile/bedFile.cpp     | 3 +++
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/intersectBed/intersectBed.cpp b/src/intersectBed/intersectBed.cpp
index 8f2dd4f3..289a985c 100644
--- a/src/intersectBed/intersectBed.cpp
+++ b/src/intersectBed/intersectBed.cpp
@@ -200,7 +200,7 @@ void BedIntersect::IntersectBed() {
         int lineNum = 0;
         vector<BED> hits;
         hits.reserve(100);
-        BED a, nullBed;
+        BED a;
         BedLineStatus bedStatus;
 
         // open the "A" file, process each BED entry and searh for overlaps.
@@ -211,7 +211,6 @@ void BedIntersect::IntersectBed() {
                 if (_obeySplits == false) {
                     FindOverlaps(a, hits);
                     hits.clear();
-                    a = nullBed;
                 }
                 // split the BED12 into blocks and look for overlaps in each discrete block
                 else {
@@ -224,7 +223,6 @@ void BedIntersect::IntersectBed() {
                         FindOverlaps(*bedItr, hits);
                         hits.clear();
                     }
-                    a = nullBed;
                 }
             }
         }
diff --git a/src/utils/bedFile/bedFile.cpp b/src/utils/bedFile/bedFile.cpp
index 0abb6973..020ab096 100644
--- a/src/utils/bedFile/bedFile.cpp
+++ b/src/utils/bedFile/bedFile.cpp
@@ -173,6 +173,9 @@ BedLineStatus BedFile::GetNextBed(BED &bed, int &lineNum) {
     // make sure there are still lines to process.
     // if so, tokenize, validate and return the BED entry.
     _bedFields.clear();
+    // clear out the previous bed's data
+    BED null;
+    bed = null;
     if (_bedStream->good()) {
         // parse the bedStream pointer
         getline(*_bedStream, _bedLine);
-- 
GitLab