Index: OpenSceneGraph/trunk/src/osgPlugins/ply/vertexData.cpp
===================================================================
--- OpenSceneGraph/trunk/src/osgPlugins/ply/vertexData.cpp (revision 10149)
+++ OpenSceneGraph/trunk/src/osgPlugins/ply/vertexData.cpp (revision 11237)
@@ -253,4 +253,6 @@
                     MESHASSERT( _colors->size() == static_cast< size_t >( nElems ) );
                 }
+
+                result = true;
             }
             catch( exception& e )
@@ -306,14 +308,19 @@
 
         // If the normals are not calculated calculate the normals for faces
-        if(!_normals.valid())
-            _calculateNormals();
-
-        
-        // set the normals
-        geom->setNormalArray(_normals.get());
-        geom->setNormalBinding(osg::Geometry::BIND_PER_VERTEX);
+        if(_triangles.valid())
+        {
+            if(!_normals.valid())
+                _calculateNormals();
+
+            // set the normals
+            geom->setNormalArray(_normals.get());
+            geom->setNormalBinding(osg::Geometry::BIND_PER_VERTEX);
+        }
         
         // Add the premetive set
-        geom->addPrimitiveSet(_triangles.get());
+        if (_triangles.valid() && _triangles->size() > 0 )
+            geom->addPrimitiveSet(_triangles.get());
+        else
+            geom->addPrimitiveSet(new osg::DrawArrays(GL_POINTS, 0, _vertices->size()));
 
         // if color info is given set the color array
