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>2020-12-14 10:44:04 +0300
committerCampbell Barton <ideasman42@gmail.com>2020-12-14 12:44:26 +0300
commit088df2bb03f3e8620cab9e466272850a03db5cc8 (patch)
tree7c620118009c5edba7e8a97a4d8a5174988e8063 /source/blender/blenkernel/intern/object.c
parentb8ae90263a9b480efd9da79968f6ce7b61a0808b (diff)
Fix missing string escape for RNA path creation
Diffstat (limited to 'source/blender/blenkernel/intern/object.c')
-rw-r--r--source/blender/blenkernel/intern/object.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index 88a604a7b62..bdb907df1ac 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -5217,8 +5217,11 @@ bool BKE_object_modifier_use_time(Object *ob, ModifierData *md)
AnimData *adt = ob->adt;
FCurve *fcu;
- char pattern[MAX_NAME + 16];
- BLI_snprintf(pattern, sizeof(pattern), "modifiers[\"%s\"]", md->name);
+ char md_name_esc[sizeof(md->name) * 2];
+ BLI_str_escape(md_name_esc, md->name, sizeof(md_name_esc));
+
+ char pattern[sizeof(md_name_esc) + 16];
+ BLI_snprintf(pattern, sizeof(pattern), "modifiers[\"%s\"]", md_name_esc);
/* action - check for F-Curves with paths containing 'modifiers[' */
if (adt->action) {
@@ -5260,8 +5263,11 @@ bool BKE_object_modifier_gpencil_use_time(Object *ob, GpencilModifierData *md)
AnimData *adt = ob->adt;
FCurve *fcu;
- char pattern[MAX_NAME + 32];
- BLI_snprintf(pattern, sizeof(pattern), "grease_pencil_modifiers[\"%s\"]", md->name);
+ char md_name_esc[sizeof(md->name) * 2];
+ BLI_str_escape(md_name_esc, md->name, sizeof(md_name_esc));
+
+ char pattern[sizeof(md_name_esc) + 32];
+ BLI_snprintf(pattern, sizeof(pattern), "grease_pencil_modifiers[\"%s\"]", md_name_esc);
/* action - check for F-Curves with paths containing 'grease_pencil_modifiers[' */
if (adt->action) {
@@ -5295,8 +5301,11 @@ bool BKE_object_shaderfx_use_time(Object *ob, ShaderFxData *fx)
AnimData *adt = ob->adt;
FCurve *fcu;
- char pattern[MAX_NAME + 32];
- BLI_snprintf(pattern, sizeof(pattern), "shader_effects[\"%s\"]", fx->name);
+ char fx_name_esc[sizeof(fx->name) * 2];
+ BLI_str_escape(fx_name_esc, fx->name, sizeof(fx_name_esc));
+
+ char pattern[sizeof(fx_name_esc) + 32];
+ BLI_snprintf(pattern, sizeof(pattern), "shader_effects[\"%s\"]", fx_name_esc);
/* action - check for F-Curves with paths containing string[' */
if (adt->action) {