diff --git a/Geo/GModel.cpp b/Geo/GModel.cpp
index 9b8771f15eb2a6dbe31c1792e4c617e6456ebaf4..1783b3f1d22f46f2e231d4662f26db9d3de63873 100644
--- a/Geo/GModel.cpp
+++ b/Geo/GModel.cpp
@@ -181,7 +181,7 @@ int GModel::setCurrent(GModel *m)
 void GModel::setFactory(std::string name)
 {
   if(_factory) delete _factory;
-  _factory = 0;
+  _factory = new GeoFactory(); //creates by default a GeoFactory
   if(name == "Gmsh") {
     _factory = new GeoFactory();
   }