[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57495] trunk/blender/source/blender: add BLI_strcpy_rlen, replace strcat, which was used in misleading way.
Campbell Barton
ideasman42 at gmail.com
Sun Jun 16 10:29:03 CEST 2013
Revision: 57495
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57495
Author: campbellbarton
Date: 2013-06-16 08:29:02 +0000 (Sun, 16 Jun 2013)
Log Message:
-----------
add BLI_strcpy_rlen, replace strcat, which was used in misleading way.
Modified Paths:
--------------
trunk/blender/source/blender/blenlib/BLI_string.h
trunk/blender/source/blender/blenlib/intern/string.c
trunk/blender/source/blender/editors/interface/interface.c
Modified: trunk/blender/source/blender/blenlib/BLI_string.h
===================================================================
--- trunk/blender/source/blender/blenlib/BLI_string.h 2013-06-16 05:35:44 UTC (rev 57494)
+++ trunk/blender/source/blender/blenlib/BLI_string.h 2013-06-16 08:29:02 UTC (rev 57495)
@@ -72,6 +72,13 @@
#endif
;
+size_t BLI_strcpy_rlen(char *__restrict dst, const char *__restrict src)
+#ifdef __GNUC__
+__attribute__((warn_unused_result))
+__attribute__((nonnull))
+#endif
+;
+
char *BLI_str_quoted_substrN(const char *__restrict str, const char *__restrict prefix)
#ifdef __GNUC__
__attribute__((warn_unused_result))
Modified: trunk/blender/source/blender/blenlib/intern/string.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/string.c 2013-06-16 05:35:44 UTC (rev 57494)
+++ trunk/blender/source/blender/blenlib/intern/string.c 2013-06-16 08:29:02 UTC (rev 57495)
@@ -139,6 +139,13 @@
return srclen;
}
+size_t BLI_strcpy_rlen(char *__restrict dst, const char *__restrict src)
+{
+ size_t srclen = strlen(src);
+ memcpy(dst, src, srclen + 1);
+ return srclen;
+}
+
/**
* Portable replacement for #vsnprintf
*/
Modified: trunk/blender/source/blender/editors/interface/interface.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface.c 2013-06-16 05:35:44 UTC (rev 57494)
+++ trunk/blender/source/blender/editors/interface/interface.c 2013-06-16 08:29:02 UTC (rev 57495)
@@ -2371,13 +2371,13 @@
char *str = but->drawstr;
if (but->modifier_key & KM_SHIFT)
- str = strcat(str, "Shift ");
+ str += BLI_strcpy_rlen(str, "Shift ");
if (but->modifier_key & KM_CTRL)
- str = strcat(str, "Ctrl ");
+ str += BLI_strcpy_rlen(str, "Ctrl ");
if (but->modifier_key & KM_ALT)
- str = strcat(str, "Alt ");
+ str += BLI_strcpy_rlen(str, "Alt ");
if (but->modifier_key & KM_OSKEY)
- str = strcat(str, "Cmd ");
+ str += BLI_strcpy_rlen(str, "Cmd ");
(void)str; /* UNUSED */
}
More information about the Bf-blender-cvs
mailing list