diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-08-04 13:19:52 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-08-04 13:19:52 +0000 |
| commit | c87f9bac5947a51cac43d3487c76aac005d81af8 (patch) | |
| tree | e4ee49c51388a490fa9cf789df32f2a97ef49e58 /src/style.cpp | |
| parent | Cleaned up once more. (diff) | |
| parent | catch exception by reference (diff) | |
| download | inkscape-c87f9bac5947a51cac43d3487c76aac005d81af8.tar.gz inkscape-c87f9bac5947a51cac43d3487c76aac005d81af8.zip | |
Merged from trunk (r12465).
(bzr r11608.1.119)
Diffstat (limited to 'src/style.cpp')
| -rw-r--r-- | src/style.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/style.cpp b/src/style.cpp index 479f30597..a9861f918 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -2945,14 +2945,19 @@ sp_style_clear(SPStyle *style) style->stroke.clear(); sp_style_filter_clear(style); + style->release_connection.disconnect(); + + style->fill_ps_modified_connection.disconnect(); if (style->fill.value.href) { delete style->fill.value.href; style->fill.value.href = NULL; } + style->stroke_ps_modified_connection.disconnect(); if (style->stroke.value.href) { delete style->stroke.value.href; style->stroke.value.href = NULL; } + style->filter_modified_connection.disconnect(); if (style->filter.href) { delete style->filter.href; style->filter.href = NULL; @@ -2972,8 +2977,9 @@ sp_style_clear(SPStyle *style) SPTextStyle *text = style->text; unsigned const text_private = style->text_private; - memset(style, 0, sizeof(SPStyle)); - + // this looks really bad! you can't just 0 *all* data in the whole struct! + // memset(style, 0, sizeof(SPStyle)); + style->refcount = refcount; style->object = object; style->document = document; |
