diff --git a/modules/gui/src/sequence/base_view_object.cc b/modules/gui/src/sequence/base_view_object.cc
index 6c882761bd82dba5ccbc891016ff0c640326bafc..f6292d97bd3a54ff7344666c5d271e7133b98f1b 100644
--- a/modules/gui/src/sequence/base_view_object.cc
+++ b/modules/gui/src/sequence/base_view_object.cc
@@ -58,7 +58,7 @@ int BaseViewObject::GetRowCount()
 
 void BaseViewObject::SetSelection(int row, const QSet<int>& added, const QSet<int>& removed)
 {
-  if(row<0 || row >= rows_.size()){
+  if(row>=0 && row < rows_.size()){
     rows_[row]->SetSelection(added,removed);
   }
 }
diff --git a/modules/gui/src/sequence/sequence_row.hh b/modules/gui/src/sequence/sequence_row.hh
index 029fe26e4579ed92c14d9c0be1134d332fb40192..51979f330de1a0c2249816c6eda26784d3f29564 100644
--- a/modules/gui/src/sequence/sequence_row.hh
+++ b/modules/gui/src/sequence/sequence_row.hh
@@ -53,7 +53,7 @@ public:
   virtual void SetSequence(seq::SequenceHandle& sequence);
   const seq::SequenceHandle& GetSequence() const;
 
-  void SetSelection(const QSet<int>& added, const QSet<int>& removed);
+  virtual void SetSelection(const QSet<int>& added, const QSet<int>& removed);
 
 private:
   QString name_;