diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-01-11 12:51:06 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-01-11 12:51:06 +0400 |
commit | 51bada696f77de9d7f673884cec9560218654fae (patch) | |
tree | d2434eac2fb74377592ee7c8c86d68b55733960c /source/blender/makesdna/DNA_action_types.h | |
parent | 782f0b63829a2c257a6e2942c49882f7fe04c33c (diff) |
Longer names support for all ID and other object names
This commit extends limit of ID and objects to 64 (it means 63 meaning
characters and 1 for zero-terminator). CustomData layers names are also
extended.
Changed DNA structures and all places where length constants were hardcoded.
All names which are "generating" from ID block should be limited by MAX_ID_NAME-2,
all non-id names now has got own define called MAX_NAME which should be used all
over for non-id names to make further name migration stuff easier.
All name fields in DNA now have comment with constant which corresponds to
hardcoded numeric value which should make it easier to further update this
limits or even switch to non-hardcoded values in DNA.
Special thanks to Campbell who helped figuring out some issues and helped a lot
in finding all cases where hardcoded valued were still used in code.
Both of forwards and backwards compatibility is stored with blender versions newer
than January 5, 2011. Older versions had issue with placing null-terminator to
DNA strings on file load which will lead to some unpredictable behavior or even
crashes.
Diffstat (limited to 'source/blender/makesdna/DNA_action_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_action_types.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/makesdna/DNA_action_types.h b/source/blender/makesdna/DNA_action_types.h index 9cee4e188ff..7df4ebd3c55 100644 --- a/source/blender/makesdna/DNA_action_types.h +++ b/source/blender/makesdna/DNA_action_types.h @@ -184,7 +184,7 @@ typedef struct bPoseChannel { IDProperty *prop; /* User-Defined Properties on this PoseChannel */ ListBase constraints;/* Constraints that act on this PoseChannel */ - char name[32]; /* Channels need longer names than normal blender objects */ + char name[72]; /* Channels need longer names than normal blender objects */ short flag; /* dynamic, for detecting transform changes */ short ikflag; /* settings for IK bones */ @@ -345,7 +345,7 @@ typedef struct bPose { void *ikparam; /* IK solver parameters, structure depends on iksolver */ bAnimVizSettings avs; /* settings for visualization of bone animation */ - char proxy_act_bone[32]; /* proxy active bone name*/ + char proxy_act_bone[64]; /* proxy active bone name, MAXBONENAME */ } bPose; @@ -669,7 +669,7 @@ typedef struct bActionChannel { ListBase constraintChannels; /* Constraint Channels (when Action Channel represents an Object or Bone) */ int flag; /* settings accessed via bitmapping */ - char name[32]; /* channel name */ + char name[64]; /* channel name, MAX_NAME */ int temp; /* temporary setting - may be used to indicate group that channel belongs to during syncing */ } bActionChannel; |