diff options
| author | Jabier Arraiza <jabier.arraiza@marker.es> | 2017-11-03 00:10:02 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2017-11-03 00:10:02 +0000 |
| commit | d2df0412f728dd5bb54537dfdfe7c35b34d40e0e (patch) | |
| tree | e2703384779e83312c456399999997fcc289c5cf /src/sp-mesh-array.cpp | |
| parent | Merge branch 'master' into powerpencil (diff) | |
| parent | change assignment to equality (diff) | |
| download | inkscape-d2df0412f728dd5bb54537dfdfe7c35b34d40e0e.tar.gz inkscape-d2df0412f728dd5bb54537dfdfe7c35b34d40e0e.zip | |
Merge branch 'master' into powerpencil
Diffstat (limited to 'src/sp-mesh-array.cpp')
| -rw-r--r-- | src/sp-mesh-array.cpp | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/src/sp-mesh-array.cpp b/src/sp-mesh-array.cpp index c89cfcc6f..a8d9e589c 100644 --- a/src/sp-mesh-array.cpp +++ b/src/sp-mesh-array.cpp @@ -936,31 +936,26 @@ void SPMeshNodeArray::write( SPMeshGradient *mg ) { } // First we must delete reprs for old mesh rows and patches. - GSList *descendant_reprs = NULL; - GSList *descendant_objects = NULL; + std::vector<SPObject*> descendant_objects; + std::vector<Inkscape::XML::Node *> descendant_reprs; for (auto& row: mg_array->children) { - descendant_reprs = g_slist_prepend (descendant_reprs, row.getRepr()); - descendant_objects = g_slist_prepend (descendant_objects, &row); + descendant_reprs.push_back(row.getRepr()); + descendant_objects.push_back(&row); for (auto& patch: row.children) { - descendant_reprs = g_slist_prepend (descendant_reprs, patch.getRepr()); - descendant_objects = g_slist_prepend (descendant_objects, &patch); + descendant_reprs.push_back(patch.getRepr()); + descendant_objects.push_back(&patch); for (auto& stop: patch.children) { - descendant_reprs = g_slist_prepend (descendant_reprs, stop.getRepr()); - descendant_objects = g_slist_prepend (descendant_objects, &stop); + descendant_reprs.push_back(stop.getRepr()); + descendant_objects.push_back(&stop); } } } - for ( GSList *i = descendant_objects; i != NULL; i = i->next ) { - SPObject *descendant = SP_OBJECT (i->data); - descendant->deleteObject(); - } - - for ( GSList *i = descendant_reprs; i != NULL; i = i->next ) { - Inkscape::XML::Node *repr = (Inkscape::XML::Node *) i->data; - sp_repr_unparent( repr ); - } + for (auto i:descendant_objects) + i->deleteObject(); + for (auto i:descendant_reprs) + sp_repr_unparent(i); // Now we build new reprs Inkscape::XML::Node *mesh = mg->getRepr(); |
