Skip to content

Commit

Permalink
fix case 1244430 removing camera comp from prefab #1953
Browse files Browse the repository at this point in the history
  • Loading branch information
martint-unity authored and sebastienlagarde committed Nov 13, 2020
1 parent 8c99ef0 commit 9b5b1cf
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
1 change: 1 addition & 0 deletions com.unity.render-pipelines.high-definition/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Fixed shadow resolution settings level in the light explorer.
- Fixed rendering of custom passes in the Custom Pass Volume inspector
- Fixed issue with volume manager trying to access a null volume.
- Fixed an issue that caused a null reference when deleting camera component in a prefab. (case 1244430)

## [7.5.1] - 2020-09-02

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,15 +77,32 @@ public void RemoveComponent(Camera camera, IEnumerable<Component> dependencies)
return;
}

Undo.SetCurrentGroupName("Remove HD Camera");
var additionalCameraData = camera.GetComponent<HDAdditionalCameraData>();
if (additionalCameraData)
var isAssetEditing = EditorUtility.IsPersistent(camera);
try
{
Undo.DestroyObjectImmediate(additionalCameraData);
if (isAssetEditing)
{
AssetDatabase.StartAssetEditing();
}

Undo.SetCurrentGroupName("Remove HD Camera");
var additionalCameraData = camera.GetComponent<HDAdditionalCameraData>();
if (additionalCameraData != null)
{
Undo.DestroyObjectImmediate(additionalCameraData);
}

Undo.DestroyObjectImmediate(camera);
}
finally
{
if (isAssetEditing)
{
AssetDatabase.StopAssetEditing();
}
}
Undo.DestroyObjectImmediate(camera);
}

[MenuItem("CONTEXT/Camera/Reset", false, 0)]
static void ResetCamera(MenuCommand menuCommand)
{
Expand Down

0 comments on commit 9b5b1cf

Please sign in to comment.