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:
-rw-r--r--source/blender/makesdna/intern/dna_utils.c11
-rw-r--r--source/blender/makesdna/intern/dna_utils.h3
2 files changed, 12 insertions, 2 deletions
diff --git a/source/blender/makesdna/intern/dna_utils.c b/source/blender/makesdna/intern/dna_utils.c
index 8891c009718..42174494347 100644
--- a/source/blender/makesdna/intern/dna_utils.c
+++ b/source/blender/makesdna/intern/dna_utils.c
@@ -107,7 +107,7 @@ uint DNA_elem_id_offset_end(const char *elem_full)
/**
* \a elem_dst must be at least the size of \a elem_src.
*/
-void DNA_elem_id_strip(char *elem_dst, const char *elem_src)
+void DNA_elem_id_strip_copy(char *elem_dst, const char *elem_src)
{
const uint elem_src_offset = DNA_elem_id_offset_start(elem_src);
const char *elem_src_trim = elem_src + elem_src_offset;
@@ -116,6 +116,15 @@ void DNA_elem_id_strip(char *elem_dst, const char *elem_src)
elem_dst[elem_src_trim_len] = '\0';
}
+void DNA_elem_id_strip(char *elem)
+{
+ const uint elem_offset = DNA_elem_id_offset_start(elem);
+ const char *elem_trim = elem + elem_offset;
+ const uint elem_trim_len = DNA_elem_id_offset_end(elem_trim);
+ memmove(elem, elem_trim, elem_trim_len);
+ elem[elem_trim_len] = '\0';
+}
+
/**
* Check if 'var' matches '*var[3]' for eg,
* return true if it does, with start/end offsets.
diff --git a/source/blender/makesdna/intern/dna_utils.h b/source/blender/makesdna/intern/dna_utils.h
index fc8e5a87547..1ad31fe034c 100644
--- a/source/blender/makesdna/intern/dna_utils.h
+++ b/source/blender/makesdna/intern/dna_utils.h
@@ -26,7 +26,8 @@ int DNA_elem_array_size(const char *str);
uint DNA_elem_id_offset_start(const char *elem_full);
uint DNA_elem_id_offset_end(const char *elem_full);
-void DNA_elem_id_strip(char *elem_dst, const char *elem_src);
+void DNA_elem_id_strip_copy(char *elem_dst, const char *elem_src);
+void DNA_elem_id_strip(char *elem);
bool DNA_elem_id_match(
const char *elem_search, const int elem_search_len,
const char *elem_full,