[Bf-blender-cvs] [7f03e7c] master: Fix T47837: Filtering UIList broken with recent master.

Bastien Montagne noreply at git.blender.org
Sat Mar 19 17:09:42 CET 2016


Commit: 7f03e7cc3cbcebd43226d05e7039ba014a56c50a
Author: Bastien Montagne
Date:   Sat Mar 19 17:06:32 2016 +0100
Branches: master
https://developer.blender.org/rB7f03e7cc3cbcebd43226d05e7039ba014a56c50a

Fix T47837: Filtering UIList broken with recent master.

Using 32nd bit of integer with our int RNA prop is not a good idea, it does not
really support unsigned int even with PROP_UNSIGNED type...

Most likely this has been unveiled by recent work over property clamping in RNA.

Not critical, but should be backported should we make an 'a' release.

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

M	source/blender/makesdna/DNA_screen_types.h

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

diff --git a/source/blender/makesdna/DNA_screen_types.h b/source/blender/makesdna/DNA_screen_types.h
index 1c11350..fbeabb3 100644
--- a/source/blender/makesdna/DNA_screen_types.h
+++ b/source/blender/makesdna/DNA_screen_types.h
@@ -344,8 +344,10 @@ enum {
 #define UI_LIST_AUTO_SIZE_THRESHOLD 1
 
 /* uiList filter flags (dyn_data) */
+/* WARNING! Those values are used by integer RNA too, which does not handle well values > INT_MAX...
+ *          So please do not use 32nd bit here. */
 enum {
-	UILST_FLT_ITEM      = 1 << 31,  /* This item has passed the filter process successfully. */
+	UILST_FLT_ITEM      = 1 << 30,  /* This item has passed the filter process successfully. */
 };
 
 /* uiList filter options */
@@ -356,7 +358,7 @@ enum {
 
 /* uiList filter orderby type */
 enum {
-	UILST_FLT_SORT_ALPHA         = 1 << 0,
+	UILST_FLT_SORT_ALPHA        = 1 << 0,
 	UILST_FLT_SORT_REVERSE      = 1 << 31  /* Special value, bitflag used to reverse order! */
 };




More information about the Bf-blender-cvs mailing list