Freestyle: reserve array sizes before filling

also use PyList_GET_ITEM when list size is known.
This commit is contained in:
2015-01-04 21:20:45 +11:00
parent de6b546e15
commit b240b8e231
6 changed files with 21 additions and 14 deletions

View File

@@ -228,8 +228,10 @@ static int ViewShape_vertices_set(BPy_ViewShape *self, PyObject *value, void *UN
PyErr_SetString(PyExc_TypeError, "value must be a list of ViewVertex objects");
return -1;
}
for (int i = 0; i < PyList_Size(list); i++) {
item = PyList_GetItem(list, i);
v.reserve(PyList_Size(list));
for (unsigned int i = 0; i < PyList_Size(list); i++) {
item = PyList_GET_ITEM(list, i);
if (BPy_ViewVertex_Check(item)) {
v.push_back(((BPy_ViewVertex *)item)->vv);
}
@@ -270,8 +272,10 @@ static int ViewShape_edges_set(BPy_ViewShape *self, PyObject *value, void *UNUSE
PyErr_SetString(PyExc_TypeError, "value must be a list of ViewEdge objects");
return -1;
}
v.reserve(PyList_Size(list));
for (int i = 0; i < PyList_Size(list); i++) {
item = PyList_GetItem(list, i);
item = PyList_GET_ITEM(list, i);
if (BPy_ViewEdge_Check(item)) {
v.push_back(((BPy_ViewEdge *)item)->ve);
}