Browse Source

Merge branch 'release/1.9.x'

Conflicts:
	dtool/PandaVersion.pp
rdb 10 years ago
parent
commit
6cb93f588b

+ 3 - 0
panda/src/glstuff/glGraphicsStateGuardian_src.cxx

@@ -1815,6 +1815,9 @@ reset() {
   _glGetFramebufferAttachmentParameteriv = glGetFramebufferAttachmentParameteriv;
   _glGenerateMipmap = glGenerateMipmap;
 #else
+  // Make sure this is properly initialized.
+  _glGenerateMipmap = NULL;
+
   //TODO: add ARB/3.0 version
 
   _supports_framebuffer_object = false;

+ 7 - 2
panda/src/parametrics/nurbsCurveEvaluator.cxx

@@ -244,8 +244,13 @@ get_vertices(NurbsCurveEvaluator::Vert3Array &verts, const NodePath &rel_to) con
   int vi;
   for (vi = 0; vi < num_vertices; vi++) {
     LVecBase4 vertex = get_vertex(vi, rel_to);
-    LPoint3 v3(vertex[0] / vertex[3], vertex[1] / vertex[3], vertex[2] / vertex[3]);
-    verts.push_back(v3);
+    // Avoid division by zero
+    if (vertex[3] == 0.0) {
+      verts.push_back(LPoint3(vertex[0], vertex[1], vertex[2]));
+    } else {
+      LPoint3 v3(vertex[0] / vertex[3], vertex[1] / vertex[3], vertex[2] / vertex[3]);
+      verts.push_back(v3);
+    }
   }
 }
 

+ 1 - 0
panda/src/parametrics/nurbsVertex.I

@@ -20,6 +20,7 @@
 ////////////////////////////////////////////////////////////////////
 INLINE NurbsVertex::
 NurbsVertex() {
+  _vertex.set(0, 0, 0, 1);
 }
 
 ////////////////////////////////////////////////////////////////////