diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
| commit | 69f3b6f1abb2bb422935d43262e1e99aab359954 (patch) | |
| tree | e1e2d2b0504d22e81b04501155995f5694a4cd7b /src/sp-metadata.cpp | |
| parent | Added experimental constructor to SPRect. Memory leaks because of non-virtual... (diff) | |
| download | inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.tar.gz inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.zip | |
Added constructors to SP classes.
(bzr r11608.1.67)
Diffstat (limited to 'src/sp-metadata.cpp')
| -rw-r--r-- | src/sp-metadata.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/sp-metadata.cpp b/src/sp-metadata.cpp index 28bf1767b..40ed0c603 100644 --- a/src/sp-metadata.cpp +++ b/src/sp-metadata.cpp @@ -33,7 +33,7 @@ /* Metadata base class */ -G_DEFINE_TYPE(SPMetadata, sp_metadata, SP_TYPE_OBJECT); +G_DEFINE_TYPE(SPMetadata, sp_metadata, G_TYPE_OBJECT); static void sp_metadata_class_init (SPMetadataClass *klass) @@ -47,9 +47,9 @@ CMetadata::CMetadata(SPMetadata* metadata) : CObject(metadata) { CMetadata::~CMetadata() { } -static void -sp_metadata_init (SPMetadata *metadata) -{ +SPMetadata::SPMetadata() : SPObject() { + SPMetadata* metadata = this; + metadata->cmetadata = new CMetadata(metadata); metadata->typeHierarchy.insert(typeid(SPMetadata)); @@ -60,6 +60,12 @@ sp_metadata_init (SPMetadata *metadata) debug("0x%08x",(unsigned int)metadata); } +static void +sp_metadata_init (SPMetadata *metadata) +{ + new (metadata) SPMetadata(); +} + namespace { void strip_ids_recursively(Inkscape::XML::Node *node) { |
