diff --git a/src/base/SMPFunction.cpp b/src/base/SMPFunction.cpp
index 53a8e59b892b10d29d689d801ab451bc389a3b47..5164428febfb4a2b62e20b098b45a025f9db9eda 100644
--- a/src/base/SMPFunction.cpp
+++ b/src/base/SMPFunction.cpp
@@ -397,6 +397,7 @@ SMPFunction::~SMPFunction() {
 			delete this->ShadowCFGBlocks[i];
 	}
 
+#if 0 // crashes in STARS/IRDB ???
 	for (size_t i = 0; i < this->LoopInductionVars.size(); ++i) {
 		for (struct InductionVarFamily CurrFam : this->LoopInductionVars[i]) {
 			if (nullptr != CurrFam.BIVInitExpr)
@@ -405,6 +406,7 @@ SMPFunction::~SMPFunction() {
 				delete CurrFam.BIVLimitExpr;
 		}
 	}
+#endif
 
 	for (size_t i = 0; i < this->LoopMemAddrExprsFromCalleeLoops.size(); ++i) {
 		for (STARSExpression *CurrExpr : this->LoopMemAddrExprsFromCalleeLoops[i]) {
diff --git a/src/base/SMPInstr.cpp b/src/base/SMPInstr.cpp
index 61fb134a882f1604fc35d73ad2e768658680949b..ac33c3f8eec11d28bb4922079013a14125457f9a 100644
--- a/src/base/SMPInstr.cpp
+++ b/src/base/SMPInstr.cpp
@@ -4932,7 +4932,7 @@ SMPInstr::~SMPInstr() {
 		this->Uses.clear();
 	}
 #if 1  // fix crashes before enabling this
-	if (nullptr != this->STARSInstPtr) {
+	if (global_STARS_program->IsIDAProDriverMode() && (nullptr != this->STARSInstPtr)) {
 		delete this->STARSInstPtr;
 		this->STARSInstPtr = nullptr;
 	}