vkSetMTLTextureMVK() function retains texture object.
diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md
index 44fbe4b..8acf695 100644
--- a/Docs/Whats_New.md
+++ b/Docs/Whats_New.md
@@ -31,9 +31,11 @@
   array of samplers requested but not supported.
 - Treat all attributes & resources as used by shader when using pre-converted MSL.
 - Allow default GPU Capture scope to be assigned to any queue in any queue family.
+- VkPhysicalDevice: Correct some features and limits.
 - Stop advertising atomic image support.
 - Enhancements to `MVKVector`, and set appropriate inline sizing usages.
 - `fetchDependencies`: build `spirv-tools` when attached via symlink.
+- vkSetMTLTextureMVK() function retains texture object.
 - Update `VK_MVK_MOLTENVK_SPEC_VERSION` to 17.
 - Update to latest SPIRV-Cross version:
 	- MSL: Deal with resource name aliasing.
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKImage.mm b/MoltenVK/MoltenVK/GPUObjects/MVKImage.mm
index 07f7cd8..a7647ba 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKImage.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKImage.mm
@@ -277,7 +277,7 @@
     resetMTLTexture();
     resetIOSurface();
 
-    _mtlTexture = mtlTexture;
+    _mtlTexture = [mtlTexture retain];		// retained
 
     _mtlPixelFormat = _mtlTexture.pixelFormat;
     _mtlTextureType = _mtlTexture.textureType;