diff --git a/Applications/ProjectData.cpp b/Applications/ProjectData.cpp
index 0c74e358fe0f38fd4d376cbb0e14aa876f8a5b5a..55c53338084c1005e0769dcaa40c8670dde3efa4 100644
--- a/Applications/ProjectData.cpp
+++ b/Applications/ProjectData.cpp
@@ -36,24 +36,8 @@ void readGeometry(std::string const& fname, GeoLib::GEOObjects & geo_objects)
 
 }
 
-ProjectData::ProjectData()
-:
-#ifdef OGS_BUILD_GUI
-	_geoObjects(new GEOModels())
-#else
-	_geoObjects(new GeoLib::GEOObjects())
-#endif
-{
-}
-
 ProjectData::ProjectData(ConfigTree const& project_config,
 	std::string const& path)
-:
-#ifdef OGS_BUILD_GUI
-	_geoObjects(new GEOModels())
-#else
-	_geoObjects(new GeoLib::GEOObjects())
-#endif
 {
 	// geometry
 	std::string const geometry_file = BaseLib::copyPathToFileName(
diff --git a/Applications/ProjectData.h b/Applications/ProjectData.h
index c0a8ba484aaa158134708ddb770ab4b1bb6cd70f..2f95070d3cc62c6b91b4a1e33377fb4cf57ae73b 100644
--- a/Applications/ProjectData.h
+++ b/Applications/ProjectData.h
@@ -41,7 +41,7 @@ using ConfigTree = boost::property_tree::ptree;
 public:
 	/// The empty constructor used in the gui, for example, when the project's
 	/// configuration is not loaded yet.
-	ProjectData();
+	ProjectData() = default;
 
 	/// Constructs project data by parsing provided configuration.
 	/// The additional  path is used to find files referenced in the
@@ -106,9 +106,9 @@ private:
 
 private:
 #ifdef OGS_BUILD_GUI
-	GEOModels *_geoObjects;
+	GEOModels *_geoObjects = new GEOModels();
 #else
-	GeoLib::GEOObjects *_geoObjects;
+	GeoLib::GEOObjects *_geoObjects = new GeoLib::GEOObjects();
 #endif
 	std::vector<MeshLib::Mesh*> _mesh_vec;
 	std::vector<ProcessLib::Process*> _processes;