diff --git a/Geo/GModelIO.cpp b/Geo/GModelIO.cpp
index dadc841d6b51c6d47a6bd0f78ecd4c496662a2cd..092cc04114d26ecbe44d5b2de2244ddb9a7f447b 100644
--- a/Geo/GModelIO.cpp
+++ b/Geo/GModelIO.cpp
@@ -611,8 +611,13 @@ int GModel::readSTL(const std::string &name, double tolerance)
     }
   }
 
-  if(!points.size() || points.size() % 3){
-    Msg(GERROR, "Wrong number of points in STL");
+  if(!points.size()){
+    Msg(GERROR, "No facets found in STL file");
+    return 0;
+  }
+  
+  if(points.size() % 3){
+    Msg(GERROR, "Wrong number of points in STL file");
     return 0;
   }