diff --git a/lib/mayaUsd/nodes/layerManager.cpp b/lib/mayaUsd/nodes/layerManager.cpp index 8f5eb3d353..9a84608baf 100644 --- a/lib/mayaUsd/nodes/layerManager.cpp +++ b/lib/mayaUsd/nodes/layerManager.cpp @@ -504,7 +504,9 @@ bool LayerDatabase::saveUsdToUsdFiles() SdfLayerHandleVector allLayers = stage->GetLayerStack(false); for (auto layer : allLayers) { - layer->Save(); + if (layer->PermissionToSave()) { + layer->Save(); + } } } } diff --git a/lib/mayaUsd/utils/utilSerialization.cpp b/lib/mayaUsd/utils/utilSerialization.cpp index 45ddbaf7bc..460061ee42 100644 --- a/lib/mayaUsd/utils/utilSerialization.cpp +++ b/lib/mayaUsd/utils/utilSerialization.cpp @@ -212,7 +212,7 @@ SdfLayerRefPtr UsdMayaSerialization::saveAnonymousLayer( SdfLayerRefPtr newLayer = SdfLayer::FindOrOpen(path); - if (parentLayer) { + if (newLayer && parentLayer) { parentLayer->GetSubLayerPaths().Replace( anonLayer->GetIdentifier(), newLayer->GetIdentifier()); }