From: martinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Date: Thu, 17 Nov 2011 16:53:31 +0000 (+0000)
Subject: fixed remove_primers
X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=2f5b5f513a71b88e241bd917dd9107270959f8d6;p=biopieces.git

fixed remove_primers

git-svn-id: http://biopieces.googlecode.com/svn/trunk@1661 74ccb610-7750-0410-82ae-013aeee3265d
---

diff --git a/bp_bin/remove_primers b/bp_bin/remove_primers
index 4e4e2e7..108f585 100755
--- a/bp_bin/remove_primers
+++ b/bp_bin/remove_primers
@@ -52,14 +52,16 @@ Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
         record[:FORWARD_POS] = forward.last.pos
         record[:FORWARD_LEN] = forward.last.length
         pos = forward.last.pos + forward.last.length
-        seq.subseq!(pos)
+        len = seq.length - pos
+        seq.subseq!(pos, len) if len > 0
       end
 
-      if reverse = seq.patscan(options[:reverse].to_s, pos, options[:mismatches], options[:insertions], options[:deletions])
+      if pos < seq.length && reverse = seq.patscan(options[:reverse].to_s, pos, options[:mismatches], options[:insertions], options[:deletions])
         record[:REVERSE_POS] = reverse.first.pos
         record[:REVERSE_LEN] = reverse.first.length
-        pos = reverse.first.pos
-        seq.subseq!(0, pos)
+        pos = 0
+        len = reverse.first.pos
+        seq.subseq!(pos, len) if len > 0
       end
 
       if pos > 0