diff --git a/src/Environment/terrainsampler.cxx b/src/Environment/terrainsampler.cxx
index 293eb2c86..d3a0e7138 100644
--- a/src/Environment/terrainsampler.cxx
+++ b/src/Environment/terrainsampler.cxx
@@ -366,6 +366,7 @@ void TerrainSamplerImplementation::reinit()
         if( subsys == NULL )
             break;
         remove_subsystem( subsystemName );
+        delete subsys;
     }
     
     init();