From 90d8529f2dc612a6fee254107e58cf1748df084b Mon Sep 17 00:00:00 2001 From: Joachim Klein Date: Sat, 19 May 2018 19:29:21 +0200 Subject: [PATCH] sparse/hybrid stochastic: fix delete call in error case Consistently use delete[] for sum arrays (only hit in error case). --- prism/src/hybrid/PH_StochBoundedUntil.cc | 2 +- prism/src/hybrid/PH_StochCumulReward.cc | 2 +- prism/src/hybrid/PH_StochTransient.cc | 2 +- prism/src/sparse/PS_StochBoundedUntil.cc | 4 ++-- prism/src/sparse/PS_StochCumulReward.cc | 2 +- prism/src/sparse/PS_StochTransient.cc | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/prism/src/hybrid/PH_StochBoundedUntil.cc b/prism/src/hybrid/PH_StochBoundedUntil.cc index 0d076617..c45393fb 100644 --- a/prism/src/hybrid/PH_StochBoundedUntil.cc +++ b/prism/src/hybrid/PH_StochBoundedUntil.cc @@ -313,7 +313,7 @@ jlong __jlongpointer mu // probs for multiplying sum = 0; } catch (const char *err) { PH_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } diff --git a/prism/src/hybrid/PH_StochCumulReward.cc b/prism/src/hybrid/PH_StochCumulReward.cc index c34411c0..30a4ff1f 100644 --- a/prism/src/hybrid/PH_StochCumulReward.cc +++ b/prism/src/hybrid/PH_StochCumulReward.cc @@ -326,7 +326,7 @@ jdouble time // time bound sum = 0; } catch (const char *err) { PH_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } diff --git a/prism/src/hybrid/PH_StochTransient.cc b/prism/src/hybrid/PH_StochTransient.cc index bd3eb12c..4b57bc30 100644 --- a/prism/src/hybrid/PH_StochTransient.cc +++ b/prism/src/hybrid/PH_StochTransient.cc @@ -294,7 +294,7 @@ jdouble time // time bound sum = 0; } catch (const char *err) { PH_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } diff --git a/prism/src/sparse/PS_StochBoundedUntil.cc b/prism/src/sparse/PS_StochBoundedUntil.cc index 82c0440b..4714059c 100644 --- a/prism/src/sparse/PS_StochBoundedUntil.cc +++ b/prism/src/sparse/PS_StochBoundedUntil.cc @@ -335,11 +335,11 @@ jlong __jlongpointer mu // probs for multiplying // catch exceptions: register error, free memory } catch (std::bad_alloc e) { PS_SetErrorMessage("Out of memory"); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } catch (const char *err) { PS_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } diff --git a/prism/src/sparse/PS_StochCumulReward.cc b/prism/src/sparse/PS_StochCumulReward.cc index b93a5ffe..b906a6b1 100644 --- a/prism/src/sparse/PS_StochCumulReward.cc +++ b/prism/src/sparse/PS_StochCumulReward.cc @@ -351,7 +351,7 @@ jdouble time // time bound sum = 0; } catch (const char *err) { PS_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; } diff --git a/prism/src/sparse/PS_StochTransient.cc b/prism/src/sparse/PS_StochTransient.cc index fba1f1e4..7d503c53 100644 --- a/prism/src/sparse/PS_StochTransient.cc +++ b/prism/src/sparse/PS_StochTransient.cc @@ -318,7 +318,7 @@ jdouble time // time bound sum = 0; } catch (const char *err) { PS_SetErrorMessage("%s", err); - if (sum) delete sum; + if (sum) delete[] sum; sum = 0; }