From ab5f450e458b129e5417b08693aeaf3f785844fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ullrich=20K=C3=B6the?= Date: Tue, 17 Oct 2000 18:59:41 +0000 Subject: [PATCH] fixed reference counting bug [SVN r7973] --- extclass.h | 4 ++-- extclass_demo.cpp | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/extclass.h b/extclass.h index 48017f78..154d8506 100644 --- a/extclass.h +++ b/extclass.h @@ -397,7 +397,7 @@ class ExtensionClass { BaseClassInfo baseInfo(base, &ConversionFunction::downcast_ptr); ClassRegistry::register_base_class(baseInfo); - add_base(Ptr(as_object(base))); + add_base(Ptr(as_object(base), Ptr::new_ref)); SubClassInfo subInfo(this, &ConversionFunction::upcast_ptr); ClassRegistry::register_sub_class(subInfo); @@ -410,7 +410,7 @@ class ExtensionClass { BaseClassInfo baseInfo(base, 0); ClassRegistry::register_base_class(baseInfo); - add_base(Ptr(as_object(base))); + add_base(Ptr(as_object(base), Ptr::new_ref)); SubClassInfo subInfo(this, &ConversionFunction::upcast_ptr); ClassRegistry::register_sub_class(subInfo); diff --git a/extclass_demo.cpp b/extclass_demo.cpp index 4ce70904..59e8099f 100644 --- a/extclass_demo.cpp +++ b/extclass_demo.cpp @@ -363,6 +363,7 @@ static int getX(OverloadTest * u) return u->x(); } + /************************************************************/ /* */ /* classes to test base declarations and conversions */