[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57147] trunk/blender/source/blender/ editors/interface/interface_layout.c: fix for incorrect use of strncat in uiItemMenuEnumO
Campbell Barton
ideasman42 at gmail.com
Thu May 30 20:42:32 CEST 2013
Revision: 57147
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57147
Author: campbellbarton
Date: 2013-05-30 18:42:32 +0000 (Thu, 30 May 2013)
Log Message:
-----------
fix for incorrect use of strncat in uiItemMenuEnumO
Modified Paths:
--------------
trunk/blender/source/blender/editors/interface/interface_layout.c
Modified: trunk/blender/source/blender/editors/interface/interface_layout.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_layout.c 2013-05-30 18:09:19 UTC (rev 57146)
+++ trunk/blender/source/blender/editors/interface/interface_layout.c 2013-05-30 18:42:32 UTC (rev 57147)
@@ -1723,7 +1723,8 @@
{
wmOperatorType *ot = WM_operatortype_find(opname, 0); /* print error next */
MenuItemLevel *lvl;
- char namestr[UI_MAX_NAME_STR], keybuf[128];
+ char namestr_buf[UI_MAX_NAME_STR], keybuf[128];
+ char *namestr = namestr_buf;
UI_OPERATOR_ERROR_RET(ot, opname, return );
@@ -1734,9 +1735,9 @@
}
if (name)
- BLI_strncpy(namestr, name, sizeof(namestr));
+ namestr += BLI_strncpy_rlen(namestr, name, sizeof(namestr_buf));
else
- BLI_strncpy(namestr, RNA_struct_ui_name(ot->srna), sizeof(namestr));
+ namestr += BLI_strncpy_rlen(namestr, RNA_struct_ui_name(ot->srna), sizeof(namestr_buf));
if (layout->root->type == UI_LAYOUT_MENU && !icon)
icon = ICON_BLANK1;
@@ -1751,12 +1752,11 @@
if (ot->prop &&
WM_key_event_operator_string(C, ot->idname, layout->root->opcontext, NULL, false, keybuf, sizeof(keybuf)))
{
- strncat(namestr, "|", sizeof(namestr) - 1);
- strncat(namestr, keybuf, sizeof(namestr) - 1);
+ namestr += BLI_snprintf(namestr, sizeof(namestr_buf) - (namestr - namestr_buf) , "|%s", name);
}
}
- ui_item_menu(layout, namestr, icon, menu_item_enum_opname_menu, NULL, lvl, RNA_struct_ui_description(ot->srna),
+ ui_item_menu(layout, namestr_buf, icon, menu_item_enum_opname_menu, NULL, lvl, RNA_struct_ui_description(ot->srna),
true);
}
More information about the Bf-blender-cvs
mailing list