Index: object.c
===================================================================
--- object.c	(revision 1202)
+++ object.c	(revision 1203)
@@ -488,8 +488,8 @@
 }
 void raydium_object_find_center(GLuint obj, GLfloat *tx, GLfloat *ty, GLfloat *tz)
 {
-GLfloat min[3];
-GLfloat max[3];
+GLfloat min[3]={0};
+GLfloat max[3]={0};
 
 raydium_object_find_minmax(obj,min,max);
 *tx=(max[0]-((max[0]-min[0])/2));
@@ -499,8 +499,8 @@
 
 void raydium_object_find_center_factors(GLuint obj, GLfloat *tx, GLfloat *ty, GLfloat *tz)
 {
-GLfloat min[3];
-GLfloat max[3];
+GLfloat min[3]={0};
+GLfloat max[3]={0};
 
 raydium_object_find_minmax(obj,min,max);
 *tx=(max[0]-((max[0]-min[0])/2));
e &&
+       raydium_ode_motor[i].object==obj)
 	raydium_ode_motor_delete(i);	
     
 // Wow... group indices are unstable while deleting group's bodies !
@@ -3641,7 +3649,7 @@
 }
 
 
-// This function is provided "for fun" only. Not all effects are dumped :
+// This function is provided "for fun" only. Not all effects are dumped:
 // Missing : shadows, forced colors, before/after callbacks, 
 // fixed elements, ...
 // Some code is pasted from file.c (and this is BAD ! :)
@@ -3740,7 +3748,7 @@
 	g=dSpaceGetGeom(raydium_ode_object[i].group,j);
 	for(k=0;k<RAYDIUM_ODE_MAX_ELEMENTS;k++)
 	    if(raydium_ode_element[k].state)
-		if(raydium_ode_element[k].geom)
+		if(raydium_ode_element[k].geom==g)
 		    break;
 	
 	if(k==RAYDIUM_ODE_MAX_ELEMENTS)