From 730a34e5e3ad3b4609952266e464d6a8e8a097c8 Mon Sep 17 00:00:00 2001 From: sheerluck Date: Sat, 18 Feb 2023 15:51:47 +0300 Subject: [PATCH 1/2] Fix index out of range exception (#35031) Reported by: seblabbe --- src/sage/plot/arrow.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/sage/plot/arrow.py b/src/sage/plot/arrow.py index 13b3b07d241..ce63c175d62 100644 --- a/src/sage/plot/arrow.py +++ b/src/sage/plot/arrow.py @@ -413,7 +413,10 @@ def get_paths(self, renderer): return paths def __call__(self, renderer, gc, tpath, affine, rgbFace): - path = self.get_paths(renderer)[self._n] + paths = self.get_paths(renderer) + if self._n >= len(paths): + return False + path = paths[self._n] vert1, code1 = path.vertices, path.codes import numpy as np From 1488b7b5631e6f88109372da71118c931bcd7b84 Mon Sep 17 00:00:00 2001 From: sheerluck Date: Sun, 26 Feb 2023 14:15:53 +0300 Subject: [PATCH 2/2] add a doctest (#35031) --- src/sage/plot/arrow.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/sage/plot/arrow.py b/src/sage/plot/arrow.py index ce63c175d62..0d09c2881d9 100644 --- a/src/sage/plot/arrow.py +++ b/src/sage/plot/arrow.py @@ -473,6 +473,13 @@ def arrow(tailpoint=None, headpoint=None, **kwds): sphinx_plot(arrow((0,0,1), (1,1,1))) + TESTS: + + Check that :trac:`35031` is fixed:: + + sage: arrow((0,0), (0,0), linestyle='dashed') + Graphics object consisting of 1 graphics primitive + """ try: return arrow2d(tailpoint, headpoint, **kwds)