[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56182] trunk/blender/source/blender: skip checks in statvis_calc_thickness().

Campbell Barton ideasman42 at gmail.com
Sat Apr 20 18:49:02 CEST 2013


Revision: 56182
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56182
Author:   campbellbarton
Date:     2013-04-20 16:49:02 +0000 (Sat, 20 Apr 2013)
Log Message:
-----------
skip checks in statvis_calc_thickness(). also remove paranoid NULL checks in smallhash.c

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c
    trunk/blender/source/blender/blenlib/intern/smallhash.c

Modified: trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c	2013-04-20 16:29:37 UTC (rev 56181)
+++ trunk/blender/source/blender/blenkernel/intern/editderivedmesh.c	2013-04-20 16:49:02 UTC (rev 56182)
@@ -1684,7 +1684,7 @@
 #define FACE_RAY_TEST_ANGLE \
 		f_hit = BKE_bmbvh_ray_cast(bmtree, ray_co, ray_no, \
 		                           &dist, NULL, NULL); \
-		if (f_hit) { \
+		if (f_hit && dist < face_dists[index]) { \
 			float angle_fac = fabsf(dot_v3v3(ltri[0]->f->no, f_hit->no)); \
 			angle_fac = 1.0f - angle_fac; \
 			angle_fac = angle_fac * angle_fac * angle_fac; \

Modified: trunk/blender/source/blender/blenlib/intern/smallhash.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/smallhash.c	2013-04-20 16:29:37 UTC (rev 56181)
+++ trunk/blender/source/blender/blenlib/intern/smallhash.c	2013-04-20 16:49:02 UTC (rev 56182)
@@ -43,6 +43,10 @@
 #define SMHASH_CELL_UNUSED  ((void *)0x7FFFFFFF)
 #define SMHASH_CELL_FREE    ((void *)0x7FFFFFFD)
 
+#ifdef __GNUC__
+#  pragma GCC diagnostic ignored "-Wstrict-overflow"
+#endif
+
 BLI_INLINE int smhash_nonzero(const int n)
 {
 	return n + !n;
@@ -83,10 +87,6 @@
 /*NOTE: does *not* free *hash itself!  only the direct data!*/
 void BLI_smallhash_release(SmallHash *hash)
 {
-	if (hash == NULL) {
-		return;
-	}
-
 	if (hash->table != hash->stacktable) {
 		MEM_freeN(hash->table);
 	}
@@ -181,10 +181,6 @@
 
 	h = ABS((int)key);
 
-	if (hash->table == NULL) {
-		return NULL;
-	}
-
 	while ((hash->table[h % hash->size].key != key) ||
 	       (hash->table[h % hash->size].val == SMHASH_CELL_UNUSED))
 	{
@@ -209,10 +205,6 @@
 	int h = ABS((int)key);
 	int hoff = 1;
 
-	if (hash->table == NULL) {
-		return 0;
-	}
-
 	while ((hash->table[h % hash->size].key != key) ||
 	       (hash->table[h % hash->size].val == SMHASH_CELL_UNUSED))
 	{
@@ -234,8 +226,8 @@
 void *BLI_smallhash_iternext(SmallHashIter *iter, uintptr_t *key)
 {
 	while (iter->i < iter->hash->size) {
-		if (    (iter->hash->table[iter->i].val != SMHASH_CELL_UNUSED) &&
-		        (iter->hash->table[iter->i].val != SMHASH_CELL_FREE))
+		if ((iter->hash->table[iter->i].val != SMHASH_CELL_UNUSED) &&
+		    (iter->hash->table[iter->i].val != SMHASH_CELL_FREE))
 		{
 			if (key) {
 				*key = iter->hash->table[iter->i].key;




More information about the Bf-blender-cvs mailing list