diff --git a/evennia/objects/manager.py b/evennia/objects/manager.py index 01728efee2..afddc809a8 100644 --- a/evennia/objects/manager.py +++ b/evennia/objects/manager.py @@ -479,12 +479,7 @@ class ObjectDBManager(TypedObjectManager): # deal with result if match_number is not None: - # this indicates someone attempting to get a single match with a match-number - if match_number >= len(matches): - # the search attempted to target a higher match index than exists in the candidates. - # This leads to a no-match. - matches = self.none() - elif 0 <= match_number < len(matches): + if 0 <= match_number < len(matches): # limit to one match (we still want a queryset back) # NOTE: still haven't found a way to avoid a second lookup matches = self.filter(id=matches[match_number].id) diff --git a/evennia/objects/tests.py b/evennia/objects/tests.py index 0ac1cfcb05..4c73bc82a6 100644 --- a/evennia/objects/tests.py +++ b/evennia/objects/tests.py @@ -250,11 +250,10 @@ class TestObjectManager(BaseEvenniaTest): def test_get_objs_with_key_or_alias(self): query = ObjectDB.objects.get_objs_with_key_or_alias("Char") self.assertEqual(list(query), [self.char1]) - self.assertEqual(list(query), [self.char1]) query = ObjectDB.objects.get_objs_with_key_or_alias( "Char", typeclasses="evennia.objects.objects.DefaultObject" ) - self.assertFalse(query) + self.assertEqual(list(query), []) query = ObjectDB.objects.get_objs_with_key_or_alias( "Char", candidates=[self.char1, self.char2] )