[Bf-blender-cvs] [b643f323545] greasepencil-object: Fixes for incorrect version patching code introduced in b6776304e76a
Joshua Leung
noreply at git.blender.org
Thu Jul 5 14:39:52 CEST 2018
Commit: b643f3235454beacaf0415b6a0a0af542c572ab1
Author: Joshua Leung
Date: Fri Jul 6 00:37:33 2018 +1200
Branches: greasepencil-object
https://developer.blender.org/rBb643f3235454beacaf0415b6a0a0af542c572ab1
Fixes for incorrect version patching code introduced in b6776304e76a
* newlibadr() shouldn't be called from direct_link_* functions
Besides, the pointers in question get corrected in
lib_link_material() already
* Added expand_doit() calls for the sima and ima pointers.
Following what's done for tex->ima, these also get expand_doit() calls,
since they increase the usercount of images when used.
===================================================================
M source/blender/blenloader/intern/readfile.c
===================================================================
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index c3ef3a1f5fa..d9aa6b0ccbc 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -4159,16 +4159,6 @@ static void direct_link_material(FileData *fd, Material *ma)
BLI_listbase_clear(&ma->gpumaterial);
ma->gp_style = newdataadr(fd, ma->gp_style);
- /* relink grease pencil settings */
- if (ma->gp_style != NULL) {
- MaterialGPencilStyle *gp_style = ma->gp_style;
- if (gp_style->sima != NULL) {
- gp_style->sima = newlibadr_us(fd, ma->id.lib, gp_style->sima);
- }
- if (gp_style->ima != NULL) {
- gp_style->ima = newlibadr_us(fd, ma->id.lib, gp_style->ima);
- }
- }
}
/* ************ READ PARTICLE SETTINGS ***************** */
@@ -9477,6 +9467,11 @@ static void expand_material(FileData *fd, Main *mainvar, Material *ma)
if (ma->nodetree)
expand_nodetree(fd, mainvar, ma->nodetree);
+ if (ma->gp_style) {
+ MaterialGPencilStyle *gp_style = ma->gp_style;
+ expand_doit(fd, mainvar, gp_style->sima);
+ expand_doit(fd, mainvar, gp_style->ima);
+ }
}
static void expand_lamp(FileData *fd, Main *mainvar, Lamp *la)
More information about the Bf-blender-cvs
mailing list