Merge pull request #480 from billhollings/master

 vkSetMTLTextureMVK() function retains texture object.
diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md
index 44fbe4b..75975f6 100644
--- a/Docs/Whats_New.md
+++ b/Docs/Whats_New.md
@@ -31,9 +31,12 @@
   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.
+- vkSetMTLTextureMVK() function retains texture object.
+- Log to stderr instead of stdout.
 - `fetchDependencies`: build `spirv-tools` when attached via symlink.
+- Enhancements to `MVKVector`, and set appropriate inline sizing usages.
 - 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;