From 8bbe629faaf1e1ccf42c9d6b368d6f11716019ea Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 6 Dec 2021 09:31:12 +0200 Subject: gn: Add mutation-simulator --- blist-stopiteration.patch | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 blist-stopiteration.patch (limited to 'blist-stopiteration.patch') diff --git a/blist-stopiteration.patch b/blist-stopiteration.patch new file mode 100644 index 0000000..198bef4 --- /dev/null +++ b/blist-stopiteration.patch @@ -0,0 +1,36 @@ +From: Andrej Shadura +Date: Sun, 8 Jul 2018 09:00:16 +0200 +Subject: Catch StopIteration in a generator and return instead, per PEP 479 + +Signed-off-by: Andrej Shadura + +Forwarded: https://github.com/DanielStutzbach/blist/pull/92 +Bug-Debian: https://bugs.debian.org/902757 +--- + blist/_sortedlist.py | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +diff --git a/blist/_sortedlist.py b/blist/_sortedlist.py +index b34f69e..1f77170 100644 +--- a/blist/_sortedlist.py ++++ b/blist/_sortedlist.py +@@ -420,11 +420,14 @@ class _setmixin(object): + def __iter__(self): + it = super(_setmixin, self).__iter__() + while True: +- item = next(it) +- n = len(self) +- yield item +- if n != len(self): +- raise RuntimeError('Set changed size during iteration') ++ try: ++ item = next(it) ++ n = len(self) ++ yield item ++ if n != len(self): ++ raise RuntimeError('Set changed size during iteration') ++ except StopIteration: ++ return + + def safe_cmp(f): + def g(self, other): -- cgit v1.2.3