X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FFinder.java;h=ff4fe603a736233f03ed9eb2714879e56455f64c;hb=e78af69b55f5b95978094c6643ce884ba78efad2;hp=e5c94bd5b90e0e41d4ff3443695ad443706eb67f;hpb=8a474786319224db5ad12dfefe91ed663140a859;p=jalview.git diff --git a/src/jalview/gui/Finder.java b/src/jalview/gui/Finder.java index e5c94bd..ff4fe60 100755 --- a/src/jalview/gui/Finder.java +++ b/src/jalview/gui/Finder.java @@ -181,6 +181,8 @@ public class Finder extends GFinder createNewGroup.setEnabled(false); String searchString = textfield.getText().toUpperCase().trim(); + if(searchString.length()<1) + return; com.stevesoft.pat.Regex regex = new com.stevesoft.pat.Regex(searchString); @@ -260,7 +262,7 @@ public class Finder extends GFinder } ///Shall we ignore gaps???? - StringBuffer noGaps = new StringBuffer(); + StringBuffer noGapsSB = new StringBuffer(); int insertCount = 0; Vector spaces = new Vector(); @@ -268,7 +270,7 @@ public class Finder extends GFinder { if (!jalview.util.Comparison.isGap(item.charAt(j))) { - noGaps.append(item.charAt(j)); + noGapsSB.append(item.charAt(j)); spaces.add(new Integer(insertCount)); } else @@ -277,9 +279,12 @@ public class Finder extends GFinder } } + String noGaps = noGapsSB.toString(); + for (int r = resIndex; r < noGaps.length(); r++) { - if (regex.searchFrom(noGaps.toString(), r)) + + if (regex.searchFrom(noGaps, r)) { resIndex = regex.matchedFrom(); @@ -313,6 +318,10 @@ public class Finder extends GFinder r = resIndex; } + else + { + break; + } } if (!found)