Fix T84420: Linking regular materials to gpencil
When using "Make Links"->"Materials" regular materials could be linked onto grease pencil objects. This caused a number of issues. The fix changes the `allow_make_links_data` function to make sure that if one object is of type `OB_GPENCIL`, the other has to be aswell. Reviewed By: antoniov Maniphest Tasks: T84420 Differential Revision: https://developer.blender.org/D10014
This commit is contained in:
parent
6672cbeb23
commit
5cdf279ef4
Notes:
blender-bot
2023-02-14 05:04:52 +01:00
Referenced by issue #84420, Linking Materials causes Regular Materials to be used in Grease Pencil
|
@ -1567,7 +1567,11 @@ static bool allow_make_links_data(const int type, Object *ob_src, Object *ob_dst
|
|||
}
|
||||
break;
|
||||
case MAKE_LINKS_MATERIALS:
|
||||
if (OB_TYPE_SUPPORT_MATERIAL(ob_src->type) && OB_TYPE_SUPPORT_MATERIAL(ob_dst->type)) {
|
||||
if (OB_TYPE_SUPPORT_MATERIAL(ob_src->type) && OB_TYPE_SUPPORT_MATERIAL(ob_dst->type) &&
|
||||
/* Linking non-grease-pencil materials to a grease-pencil object causes issues.
|
||||
* We make sure that if one of the objects is a grease-pencil object, the other must be
|
||||
* as well. */
|
||||
((ob_src->type == OB_GPENCIL) == (ob_dst->type == OB_GPENCIL))) {
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue