Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2013-07-29 08:45:40 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-07-29 08:45:40 +0400
commit33a9cb6caa27aff13942fdea5e95cb9ac8ee74df (patch)
treec63056e0978b4729c5ba86aac39e56cfa6d0f554 /source/blender/nodes
parenta25f00301f63fb61e830199df62beb2fa1999013 (diff)
minor changes for confusing code.
- memset() was argument was truncated. - outliner had redundant NULL check. - node texture was allocating memory to make a unique name which isnt needed for a fixed size string.
Diffstat (limited to 'source/blender/nodes')
-rw-r--r--source/blender/nodes/texture/nodes/node_texture_output.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/source/blender/nodes/texture/nodes/node_texture_output.c b/source/blender/nodes/texture/nodes/node_texture_output.c
index 235cb560a99..37e527f611a 100644
--- a/source/blender/nodes/texture/nodes/node_texture_output.c
+++ b/source/blender/nodes/texture/nodes/node_texture_output.c
@@ -80,12 +80,13 @@ static void exec(void *data, int UNUSED(thread), bNode *node, bNodeExecData *exe
static void unique_name(bNode *node)
{
TexNodeOutput *tno = (TexNodeOutput *)node->storage;
- char *new_name = NULL;
+ char new_name[sizeof(tno->name)];
int new_len = 0;
int suffix;
bNode *i;
char *name = tno->name;
+ new_name[0] = '\0';
i = node;
while (i->prev) i = i->prev;
for (; i; i = i->next) {
@@ -96,7 +97,7 @@ static void unique_name(bNode *node)
continue;
}
- if (!new_name) {
+ if (new_name[0] == '\0') {
int len = strlen(name);
if (len >= 4 && sscanf(name + len - 4, ".%03d", &suffix) == 1) {
new_len = len;
@@ -107,17 +108,15 @@ static void unique_name(bNode *node)
if (new_len > (sizeof(tno->name) - 1))
new_len = (sizeof(tno->name) - 1);
}
-
- new_name = MEM_mallocN(new_len + 1, "new_name");
- strcpy(new_name, name);
+
+ BLI_strncpy(new_name, name, sizeof(tno->name));
name = new_name;
}
sprintf(new_name + new_len - 4, ".%03d", ++suffix);
}
- if (new_name) {
- strcpy(tno->name, new_name);
- MEM_freeN(new_name);
+ if (new_name[0] != '\0') {
+ BLI_strncpy(tno->name, new_name, sizeof(tno->name));
}
}