diff options
author | Erik Schnetter <schnetter@gmail.com> | 2013-08-06 12:57:23 -0400 |
---|---|---|
committer | Erik Schnetter <schnetter@gmail.com> | 2013-08-06 13:11:12 -0400 |
commit | 1208584f656f4af6a0b3d511882f77727f4638f3 (patch) | |
tree | f5a38ed7a4607cbb76f39e33a3d001033fc28805 | |
parent | b6b6b71ca4c1de25e5d8f2dbc515d052b72aba32 (diff) |
CarpetLib: Free ggf data structures in ggf, not in gf<T>
-rw-r--r-- | Carpet/CarpetLib/src/gf.cc | 8 | ||||
-rw-r--r-- | Carpet/CarpetLib/src/ggf.cc | 10 |
2 files changed, 10 insertions, 8 deletions
diff --git a/Carpet/CarpetLib/src/gf.cc b/Carpet/CarpetLib/src/gf.cc index 939c34373..e9604186f 100644 --- a/Carpet/CarpetLib/src/gf.cc +++ b/Carpet/CarpetLib/src/gf.cc @@ -21,20 +21,12 @@ gf<T>::gf (const int varindex_, const operator_type transport_operator_, t_, d_, prolongation_order_time_, vectorlength_, vectorindex_, vectorleader_) { - recompose_crop (); - for (int rl=0; rl<h.reflevels(); ++rl) { - recompose_allocate (rl); - recompose_free_old (rl); - } // for rl } // Destructors template<typename T> gf<T>::~gf () { - for (int rl=0; rl<h.reflevels(); ++rl) { - recompose_free (rl); - } // for rl } diff --git a/Carpet/CarpetLib/src/ggf.cc b/Carpet/CarpetLib/src/ggf.cc index 84f867c46..7ec02ff30 100644 --- a/Carpet/CarpetLib/src/ggf.cc +++ b/Carpet/CarpetLib/src/ggf.cc @@ -52,10 +52,20 @@ ggf::ggf (const int varindex_, const operator_type transport_operator_, allggf.insert (this); d.insert (this); + + recompose_crop (); + for (int rl=0; rl<h.reflevels(); ++rl) { + recompose_allocate (rl); + recompose_free_old (rl); + } // for rl } // Destructors ggf::~ggf () { + for (int rl=0; rl<h.reflevels(); ++rl) { + recompose_free (rl); + } // for rl + d.erase (this); allggf.erase (this); } |