diff --git a/modules/Bio/EnsEMBL/Slice.pm b/modules/Bio/EnsEMBL/Slice.pm
index 119fe3e42b2a0757bdc95ecd9306de3973a91a68..bab8b84c460f03765bfa341ff1765f9abd039d14 100644
--- a/modules/Bio/EnsEMBL/Slice.pm
+++ b/modules/Bio/EnsEMBL/Slice.pm
@@ -1627,7 +1627,9 @@ sub get_all_ExternalFeatures {
 
    if($track_name) {
      #use a specific adaptor
-     push @xf_adaptors, $xfa_hash->{$track_name};
+     if(exists $xfa_hash->{$track_name}) {
+       push @xf_adaptors, $xfa_hash->{$track_name};
+     }
    } else {
      #use all of the adaptors
      push @xf_adaptors, values %$xfa_hash;