Context: Fix scene_collection
We now allow for scene collection that is not currently linked to view layer.
This commit is contained in:
@@ -968,11 +968,11 @@ RenderEngineType *CTX_data_engine_type(const bContext *C)
|
|||||||
LayerCollection *CTX_data_layer_collection(const bContext *C)
|
LayerCollection *CTX_data_layer_collection(const bContext *C)
|
||||||
{
|
{
|
||||||
ViewLayer *view_layer = CTX_data_view_layer(C);
|
ViewLayer *view_layer = CTX_data_view_layer(C);
|
||||||
LayerCollection *lc;
|
LayerCollection *layer_collection;
|
||||||
|
|
||||||
if (ctx_data_pointer_verify(C, "layer_collection", (void *)&lc)) {
|
if (ctx_data_pointer_verify(C, "layer_collection", (void *)&layer_collection)) {
|
||||||
if (BKE_view_layer_has_collection(view_layer, lc->scene_collection)) {
|
if (BKE_view_layer_has_collection(view_layer, layer_collection->scene_collection)) {
|
||||||
return lc;
|
return layer_collection;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -982,16 +982,14 @@ LayerCollection *CTX_data_layer_collection(const bContext *C)
|
|||||||
|
|
||||||
SceneCollection *CTX_data_scene_collection(const bContext *C)
|
SceneCollection *CTX_data_scene_collection(const bContext *C)
|
||||||
{
|
{
|
||||||
SceneCollection *sc;
|
SceneCollection *scene_collection;
|
||||||
if (ctx_data_pointer_verify(C, "scene_collection", (void *)&sc)) {
|
if (ctx_data_pointer_verify(C, "scene_collection", (void *)&scene_collection)) {
|
||||||
if (BKE_view_layer_has_collection(CTX_data_view_layer(C), sc)) {
|
return scene_collection;
|
||||||
return sc;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
LayerCollection *lc = CTX_data_layer_collection(C);
|
LayerCollection *layer_collection = CTX_data_layer_collection(C);
|
||||||
if (lc) {
|
if (layer_collection) {
|
||||||
return lc->scene_collection;
|
return layer_collection->scene_collection;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* fallback */
|
/* fallback */
|
||||||
|
Reference in New Issue
Block a user