From 2d400a4d5fa7833ee8398dcd3689a29060bf2dc3 Mon Sep 17 00:00:00 2001 From: Camille Date: Fri, 27 Oct 2023 08:36:22 +0800 Subject: [PATCH] Fix issue #9465 [Problem] Coin version on Mac Conda builds causes transform crash - see issue for detailed explanation. --- src/Gui/SoFCCSysDragger.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Gui/SoFCCSysDragger.cpp b/src/Gui/SoFCCSysDragger.cpp index e78fbc11a6..3bec752ca9 100644 --- a/src/Gui/SoFCCSysDragger.cpp +++ b/src/Gui/SoFCCSysDragger.cpp @@ -93,6 +93,7 @@ void TDragger::initClass() TDragger::TDragger() { SO_KIT_CONSTRUCTOR(TDragger); + this->ref(); SO_KIT_ADD_CATALOG_ENTRY(translatorSwitch, SoSwitch, TRUE, geomSeparator, "", TRUE); SO_KIT_ADD_CATALOG_ENTRY(translator, SoSeparator, TRUE, translatorSwitch, "", TRUE); @@ -139,6 +140,7 @@ TDragger::~TDragger() this->removeMotionCallback(&TDragger::motionCB); this->removeFinishCallback(&TDragger::finishCB); removeValueChangedCallback(&TDragger::valueChangedCB); + this->unref(); } void TDragger::buildFirstInstance() @@ -388,6 +390,7 @@ void TPlanarDragger::initClass() TPlanarDragger::TPlanarDragger() { SO_KIT_CONSTRUCTOR(TPlanarDragger); + this->ref(); SO_KIT_ADD_CATALOG_ENTRY(planarTranslatorSwitch, SoSwitch, TRUE, geomSeparator, "", TRUE); SO_KIT_ADD_CATALOG_ENTRY(planarTranslator, SoSeparator, TRUE, planarTranslatorSwitch, "", TRUE); @@ -435,6 +438,7 @@ TPlanarDragger::~TPlanarDragger() this->removeMotionCallback(&TPlanarDragger::motionCB); this->removeFinishCallback(&TPlanarDragger::finishCB); removeValueChangedCallback(&TPlanarDragger::valueChangedCB); + this->unref(); } void TPlanarDragger::buildFirstInstance() @@ -667,6 +671,7 @@ void RDragger::initClass() RDragger::RDragger() { SO_KIT_CONSTRUCTOR(RDragger); + this->ref(); SO_KIT_ADD_CATALOG_ENTRY(rotatorSwitch, SoSwitch, TRUE, geomSeparator, "", TRUE); SO_KIT_ADD_CATALOG_ENTRY(rotator, SoSeparator, TRUE, rotatorSwitch, "", TRUE); @@ -714,6 +719,7 @@ RDragger::~RDragger() this->removeMotionCallback(&RDragger::motionCB); this->removeFinishCallback(&RDragger::finishCB); removeValueChangedCallback(&RDragger::valueChangedCB); + this->unref(); } void RDragger::buildFirstInstance()