FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Fix leak if affine_transform is passed invalid vertices. · rocLv/matplotlib@8c0d73e · GitHub

Repository navigation

Commit 8c0d73e

Browse files
committed
Fix leak if affine_transform is passed invalid vertices.
1 parent dba02be commit 8c0d73e

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

‎src/_path_wrapper.cpp‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,17 +453,19 @@ static PyObject *Py_affine_transform(PyObject *self, PyObject *args, PyObject *k
453453

454454
if (PyArray_NDIM(vertices_arr) == 2) {
455455
numpy::array_view<double, 2> vertices(vertices_arr);
456+
Py_DECREF(vertices_arr);
457+
456458
npy_intp dims[] = { (npy_intp)vertices.size(), 2 };
457459
numpy::array_view<double, 2> result(dims);
458460
CALL_CPP("affine_transform", (affine_transform_2d(vertices, trans, result)));
459-
Py_DECREF(vertices_arr);
460461
return result.pyobj();
461462
} else { // PyArray_NDIM(vertices_arr) == 1
462463
numpy::array_view<double, 1> vertices(vertices_arr);
464+
Py_DECREF(vertices_arr);
465+
463466
npy_intp dims[] = { (npy_intp)vertices.size() };
464467
numpy::array_view<double, 1> result(dims);
465468
CALL_CPP("affine_transform", (affine_transform_1d(vertices, trans, result)));
466-
Py_DECREF(vertices_arr);
467469
return result.pyobj();
468470
}
469471
}

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL