# HG changeset patch # User Alpar Juttner # Date 2009-03-04 14:43:05 # Node ID fc6c7aab4b8d01f2d6ee4eb442b7ee81847319d5 # Parent 89e29e22d479cd4f91dec4578f83f472efcab3e7 # Parent ba124394367a55cc36b851a808f3f3218abf8367 Merge diff --git a/lemon/glpk.cc b/lemon/glpk.cc --- a/lemon/glpk.cc +++ b/lemon/glpk.cc @@ -522,6 +522,12 @@ cols.clear(); } + void GlpkBase::freeEnv() { + glp_free_env(); + } + + GlpkBase::FreeEnvHelper GlpkBase::freeEnvHelper; + // GlpkLp members GlpkLp::GlpkLp() diff --git a/lemon/glpk.h b/lemon/glpk.h --- a/lemon/glpk.h +++ b/lemon/glpk.h @@ -100,6 +100,18 @@ virtual void _clear(); + private: + + static void freeEnv(); + + struct FreeEnvHelper { + ~FreeEnvHelper() { + freeEnv(); + } + }; + + static FreeEnvHelper freeEnvHelper; + public: ///Pointer to the underlying GLPK data structure.