From f6f201213db27d2aae22264c4d7770884b8c6ea9 Mon Sep 17 00:00:00 2001 From: MenTaLguY Date: Wed, 15 Mar 2006 04:07:41 +0000 Subject: Replace GC::Managed<>::clearOnceInaccessible with GC::soft_ptr<> (bzr r241) --- src/display/nr-arena-item.cpp | 7 ------- src/display/nr-arena-item.h | 9 ++++----- 2 files changed, 4 insertions(+), 12 deletions(-) (limited to 'src/display') diff --git a/src/display/nr-arena-item.cpp b/src/display/nr-arena-item.cpp index ccabe7b28..e816460b9 100644 --- a/src/display/nr-arena-item.cpp +++ b/src/display/nr-arena-item.cpp @@ -63,13 +63,6 @@ nr_arena_item_class_init (NRArenaItemClass *klass) object_class->cpp_ctor = NRObject::invoke_ctor; } -NRArenaItem::NRArenaItem() { - // clear all reverse-pointing pointers before finalization - clearOnceInaccessible(&arena); - clearOnceInaccessible(&parent); - clearOnceInaccessible(&prev); -} - static void nr_arena_item_init (NRArenaItem *item) { diff --git a/src/display/nr-arena-item.h b/src/display/nr-arena-item.h index f43152ff9..737fed879 100644 --- a/src/display/nr-arena-item.h +++ b/src/display/nr-arena-item.h @@ -56,6 +56,7 @@ #include #include #include +#include "gc-soft-ptr.h" #include "nr-arena-forward.h" // My testing shows that disabling cache reduces the amount @@ -70,12 +71,10 @@ struct NRGC { }; struct NRArenaItem : public NRObject { - NRArenaItem(); - - NRArena *arena; - NRArenaItem *parent; + Inkscape::GC::soft_ptr arena; + Inkscape::GC::soft_ptr parent; NRArenaItem *next; - NRArenaItem *prev; + Inkscape::GC::soft_ptr prev; /* Item state */ unsigned int state : 16; -- cgit v1.2.3