diff --git a/source/blender/makesrna/RNA_types.h b/source/blender/makesrna/RNA_types.h index 18fb2700bbf..e771b495b96 100644 --- a/source/blender/makesrna/RNA_types.h +++ b/source/blender/makesrna/RNA_types.h @@ -84,8 +84,9 @@ typedef enum PropertyUnit { PROP_UNIT_ACCELERATION = (8<<16) /* m/(s^2) */ } PropertyUnit; -#define RNA_SUBTYPE_UNIT(subtype) (subtype & 0x00FF0000) -#define RNA_SUBTYPE_UNIT_VALUE(subtype) (subtype>>16) +#define RNA_SUBTYPE_UNIT(subtype) ((subtype) & 0x00FF0000) +#define RNA_SUBTYPE_VALUE(subtype) ((subtype) & ~0x00FF0000) +#define RNA_SUBTYPE_UNIT_VALUE(subtype) ((subtype)>>16) #define RNA_ENUM_BITFLAG_SIZE 32 diff --git a/source/blender/python/intern/bpy_rna.c b/source/blender/python/intern/bpy_rna.c index 92bd686114d..7427fc73d94 100644 --- a/source/blender/python/intern/bpy_rna.c +++ b/source/blender/python/intern/bpy_rna.c @@ -158,7 +158,7 @@ PyObject *pyrna_math_object_from_array(PointerRNA *ptr, PropertyRNA *prop) if (totdim == 1 || (totdim == 2 && subtype == PROP_MATRIX)) { ret = pyrna_prop_CreatePyObject(ptr, prop); /* owned by the Mathutils PyObject */ - switch(RNA_property_subtype(prop)) { + switch(RNA_SUBTYPE_VALUE(RNA_property_subtype(prop))) { case PROP_TRANSLATION: case PROP_DIRECTION: case PROP_VELOCITY: