[Bf-blender-cvs] [cf29010] master: Cleanup: warnings bit-shift int overflow

Campbell Barton noreply at git.blender.org
Fri Mar 20 05:43:28 CET 2015


Commit: cf29010bd4085b2ab76c58a30d1148265a879d69
Author: Campbell Barton
Date:   Fri Mar 20 15:26:47 2015 +1100
Branches: master
https://developer.blender.org/rBcf29010bd4085b2ab76c58a30d1148265a879d69

Cleanup: warnings bit-shift int overflow

===================================================================

M	source/blender/blenkernel/intern/screen.c
M	source/blender/editors/armature/pose_edit.c
M	source/blender/editors/space_view3d/view3d_header.c
M	source/blender/makesrna/intern/makesrna.c
M	source/blender/makesrna/intern/rna_armature.c
M	source/blender/makesrna/intern/rna_controller.c
M	source/blender/makesrna/intern/rna_space.c

===================================================================

diff --git a/source/blender/blenkernel/intern/screen.c b/source/blender/blenkernel/intern/screen.c
index a6ac455..3c43bfa 100644
--- a/source/blender/blenkernel/intern/screen.c
+++ b/source/blender/blenkernel/intern/screen.c
@@ -510,8 +510,8 @@ void BKE_screen_view3d_sync(View3D *v3d, struct Scene *scene)
 
 		if ((v3d->lay & v3d->layact) == 0) {
 			for (bit = 0; bit < 32; bit++) {
-				if (v3d->lay & (1 << bit)) {
-					v3d->layact = 1 << bit;
+				if (v3d->lay & (1u << bit)) {
+					v3d->layact = (1u << bit);
 					break;
 				}
 			}
diff --git a/source/blender/editors/armature/pose_edit.c b/source/blender/editors/armature/pose_edit.c
index 549a385..bc90031 100644
--- a/source/blender/editors/armature/pose_edit.c
+++ b/source/blender/editors/armature/pose_edit.c
@@ -862,7 +862,7 @@ static int pose_bone_layers_invoke(bContext *C, wmOperator *op, const wmEvent *e
 		
 		/* loop over the bits for this pchan's layers, adding layers where they're needed */
 		for (bit = 0; bit < 32; bit++) {
-			layers[bit] = (pchan->bone->layer & (1 << bit)) != 0;
+			layers[bit] = (pchan->bone->layer & (1u << bit)) != 0;
 		}
 	}
 	CTX_DATA_END;
@@ -936,8 +936,9 @@ static int armature_bone_layers_invoke(bContext *C, wmOperator *op, const wmEven
 		
 		/* loop over the bits for this pchan's layers, adding layers where they're needed */
 		for (bit = 0; bit < 32; bit++) {
-			if (ebone->layer & (1 << bit))
+			if (ebone->layer & (1u << bit)) {
 				layers[bit] = 1;
+			}
 		}
 	}
 	CTX_DATA_END;
diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c
index 11ed986..f891234 100644
--- a/source/blender/editors/space_view3d/view3d_header.c
+++ b/source/blender/editors/space_view3d/view3d_header.c
@@ -105,8 +105,8 @@ static void view3d_layers_editmode_ensure(Scene *scene, View3D *v3d)
 	if (scene->obedit && (scene->obedit->lay & v3d->lay) == 0) {
 		int bit;
 		for (bit = 0; bit < 32; bit++) {
-			if (scene->obedit->lay & (1 << bit)) {
-				v3d->lay |= 1 << bit;
+			if (scene->obedit->lay & (1u << bit)) {
+				v3d->lay |= (1u << bit);
 				break;
 			}
 		}
@@ -161,8 +161,8 @@ static int view3d_layers_exec(bContext *C, wmOperator *op)
 			v3d->layact = 1 << nr;
 		else if ((v3d->lay & v3d->layact) == 0) {
 			for (bit = 0; bit < 32; bit++) {
-				if (v3d->lay & (1 << bit)) {
-					v3d->layact = 1 << bit;
+				if (v3d->lay & (1u << bit)) {
+					v3d->layact = (1u << bit);
 					break;
 				}
 			}
diff --git a/source/blender/makesrna/intern/makesrna.c b/source/blender/makesrna/intern/makesrna.c
index 894d5ef..5f86393 100644
--- a/source/blender/makesrna/intern/makesrna.c
+++ b/source/blender/makesrna/intern/makesrna.c
@@ -936,7 +936,7 @@ static char *rna_def_property_set_func(FILE *f, StructRNA *srna, PropertyRNA *pr
 
 					if (dp->dnaarraylength == 1) {
 						if (prop->type == PROP_BOOLEAN && dp->booleanbit) {
-							fprintf(f, "		if (%svalues[i]) data->%s |= (%d<<i);\n",
+							fprintf(f, "		if (%svalues[i]) data->%s |= (%du << i);\n",
 							        (dp->booleannegative) ? "!" : "", dp->dnaname, dp->booleanbit);
 							fprintf(f, "		else data->%s &= ~(%du << i);\n", dp->dnaname, dp->booleanbit);
 						}
diff --git a/source/blender/makesrna/intern/rna_armature.c b/source/blender/makesrna/intern/rna_armature.c
index 421d7b2..93e5cea 100644
--- a/source/blender/makesrna/intern/rna_armature.c
+++ b/source/blender/makesrna/intern/rna_armature.c
@@ -247,8 +247,8 @@ static void rna_bone_layer_set(int *layer, const int *values)
 		return;
 
 	for (i = 0; i < 32; i++) {
-		if (values[i]) *layer |= (1 << i);
-		else *layer &= ~(1 << i);
+		if (values[i]) *layer |= (1u << i);
+		else *layer &= ~(1u << i);
 	}
 }
 
@@ -272,8 +272,8 @@ static void rna_Armature_layer_set(PointerRNA *ptr, const int *values)
 		return;
 
 	for (i = 0; i < 32; i++) {
-		if (values[i]) arm->layer |= (1 << i);
-		else arm->layer &= ~(1 << i);
+		if (values[i]) arm->layer |= (1u << i);
+		else arm->layer &= ~(1u << i);
 	}
 }
 
diff --git a/source/blender/makesrna/intern/rna_controller.c b/source/blender/makesrna/intern/rna_controller.c
index ba0214d..605e286 100644
--- a/source/blender/makesrna/intern/rna_controller.c
+++ b/source/blender/makesrna/intern/rna_controller.c
@@ -120,7 +120,7 @@ static int rna_Controller_state_number_get(struct PointerRNA *ptr)
 	int bit;
 
 	for (bit = 0; bit < 32; bit++) {
-		if (cont->state_mask & (1 << bit))
+		if (cont->state_mask & (1u << bit))
 			return bit + 1;
 	}
 	return 0;
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c
index 9e7d70a..db4b097 100644
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@ -413,8 +413,8 @@ static void rna_SpaceView3D_lock_camera_and_layers_set(PointerRNA *ptr, int valu
 		/* seek for layact */
 		bit = 0;
 		while (bit < 32) {
-			if (v3d->lay & (1 << bit)) {
-				v3d->layact = 1 << bit;
+			if (v3d->lay & (1u << bit)) {
+				v3d->layact = (1u << bit);
 				break;
 			}
 			bit++;




More information about the Bf-blender-cvs mailing list