Revision: 38273
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38273
Author:   campbellbarton
Date:     2011-07-09 19:59:32 +0000 (Sat, 09 Jul 2011)
Log Message:
-----------
fix for NULL pointer usages

Modified Paths:
--------------
    trunk/blender/source/blender/blenlib/intern/pbvh.c
    trunk/blender/source/blender/python/intern/bpy_rna.c
    trunk/blender/source/gameengine/Expressions/PyObjectPlus.cpp
    trunk/blender/source/gameengine/Ketsji/KX_Camera.cpp
    trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp

Modified: trunk/blender/source/blender/blenlib/intern/pbvh.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/pbvh.c  2011-07-09 19:57:29 UTC 
(rev 38272)
+++ trunk/blender/source/blender/blenlib/intern/pbvh.c  2011-07-09 19:59:32 UTC 
(rev 38273)
@@ -1189,8 +1189,9 @@
 void BLI_pbvh_node_num_verts(PBVH *bvh, PBVHNode *node, int *uniquevert, int 
*totvert)
 {
        if(bvh->grids) {
-               if(totvert) *totvert= node->totprim*bvh->gridsize*bvh->gridsize;
-               if(uniquevert) *uniquevert= *totvert;
+               const int tot= node->totprim*bvh->gridsize*bvh->gridsize;
+               if(totvert) *totvert= tot;
+               if(uniquevert) *uniquevert= tot;
        }
        else {
                if(totvert) *totvert= node->uniq_verts + node->face_verts;

Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c        2011-07-09 
19:57:29 UTC (rev 38272)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c        2011-07-09 
19:59:32 UTC (rev 38273)
@@ -3847,9 +3847,11 @@
                                case PROP_RAW_DOUBLE:
                                        item= PyFloat_FromDouble((double) 
((double *)array)[i]);
                                        break;
-                               case PROP_RAW_UNSET:
+                               default: /* PROP_RAW_UNSET */
                                        /* should never happen */
                                        BLI_assert(!"Invalid array type - get");
+                                       item= Py_None;
+                                       Py_INCREF(item);
                                        break;
                                }
 

Modified: trunk/blender/source/gameengine/Expressions/PyObjectPlus.cpp
===================================================================
--- trunk/blender/source/gameengine/Expressions/PyObjectPlus.cpp        
2011-07-09 19:57:29 UTC (rev 38272)
+++ trunk/blender/source/gameengine/Expressions/PyObjectPlus.cpp        
2011-07-09 19:59:32 UTC (rev 38273)
@@ -1147,7 +1147,7 @@
                BGE_PROXY_REF(proxy) = NULL; 
                BGE_PROXY_PTR(proxy) = ptr;
 #ifdef USE_WEAKREFS
-               BGE_PROXY_WKREF(self->m_proxy) = NULL;
+               BGE_PROXY_WKREF(proxy) = NULL;
 #endif
                return proxy;
        }

Modified: trunk/blender/source/gameengine/Ketsji/KX_Camera.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_Camera.cpp        2011-07-09 
19:57:29 UTC (rev 38272)
+++ trunk/blender/source/gameengine/Ketsji/KX_Camera.cpp        2011-07-09 
19:59:32 UTC (rev 38273)
@@ -1022,10 +1022,8 @@
                return NULL;
 
        PyObject* argValue = PyTuple_New(2);
-       if (argValue) {
-               PyTuple_SET_ITEM(argValue, 0, PyFloat_FromDouble(x));
-               PyTuple_SET_ITEM(argValue, 1, PyFloat_FromDouble(y));
-       }
+       PyTuple_SET_ITEM(argValue, 0, PyFloat_FromDouble(x));
+       PyTuple_SET_ITEM(argValue, 1, PyFloat_FromDouble(y));
 
        if(!PyVecTo(PygetScreenVect(argValue), vect))
        {

Modified: trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp    2011-07-09 
19:57:29 UTC (rev 38272)
+++ trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp    2011-07-09 
19:59:32 UTC (rev 38273)
@@ -327,7 +327,7 @@
                                
rootobj->m_pPhysicsController1->RemoveCompoundChild(m_pPhysicsController1);
                        }
                        m_pPhysicsController1->RestoreDynamics();
-                       if (m_pPhysicsController1->IsDyna() && 
rootobj->m_pPhysicsController1)
+                       if (m_pPhysicsController1->IsDyna() && (rootobj != NULL 
&& rootobj->m_pPhysicsController1))
                        {
                                // dynamic object should remember the velocity 
they had while being parented
                                MT_Point3 childPoint = 
GetSGNode()->GetWorldPosition();

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to