diff --git a/modules/Bio/EnsEMBL/DBSQL/SliceAdaptor.pm b/modules/Bio/EnsEMBL/DBSQL/SliceAdaptor.pm
index a9af3fbb7bf4577c2c73f050d05366e5f5a75692..659384e504727968f70c0a1e0762e3ce67e7ed40 100644
--- a/modules/Bio/EnsEMBL/DBSQL/SliceAdaptor.pm
+++ b/modules/Bio/EnsEMBL/DBSQL/SliceAdaptor.pm
@@ -402,7 +402,7 @@ sub fetch_by_region {
   #let it fall through to the normal Slice method
   if ( $end + 1 < $start ) {
     my $cs_id = $cs->dbID();
-    my $seq_region_id = $self->{'sr_name_cache'}->{"$seq_region_name:$cs_id"} = $arr->[0];
+    my $seq_region_id = $self->{'sr_name_cache'}->{"$seq_region_name:$cs_id"}->[0];
     if($self->is_circular($seq_region_id)) {
       my $new_sl =
         Bio::EnsEMBL::CircularSlice->new(