Merge pull request #1388 from billhollings/fix-block-observer-leak

Fix small memory leak during swapchain creation.
diff --git a/Demos/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme b/Demos/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
index e7696f2..fc957fc 100644
--- a/Demos/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
+++ b/Demos/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
@@ -62,7 +62,8 @@
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
       debugDocumentVersioning = "YES">
-      <MacroExpansion>
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "A9B53B0F1C3AC0BE00ABC6F6"
@@ -70,7 +71,7 @@
             BlueprintName = "Cube-macOS"
             ReferencedContainer = "container:Cube.xcodeproj">
          </BuildableReference>
-      </MacroExpansion>
+      </BuildableProductRunnable>
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md
index 6ae284d..ffbe5e7 100644
--- a/Docs/Whats_New.md
+++ b/Docs/Whats_New.md
@@ -36,6 +36,7 @@
 - On command buffer submission failure, if `MVKConfiguration::resumeLostDevice` enabled,  do not release 
   waits on `VkDevice`, and do not return `VK_ERROR_DEVICE_LOST`, unless `VkPhysicalDevice` is also lost.
 - Fix inconsistent handling of linear attachment decisions on Apple Silicon.
+- Fix small memory leak during swapchain creation.
 - Protect against crash when retrieving `MTLTexture` when `VkImage` has no `VkDeviceMemory` bound.
 - Adjust some `VkPhysicalDeviceLimits` values for Vulkan and Metal compliance. 
 - Fix internal reference from `SPIRV_CROSS_NAMESPACE_OVERRIDE` to `SPIRV_CROSS_NAMESPACE`.
diff --git a/MoltenVK/MoltenVK/Utility/MVKBlockObserver.m b/MoltenVK/MoltenVK/Utility/MVKBlockObserver.m
index af58a6c..c0314e9 100644
--- a/MoltenVK/MoltenVK/Utility/MVKBlockObserver.m
+++ b/MoltenVK/MoltenVK/Utility/MVKBlockObserver.m
@@ -47,6 +47,7 @@
 
 - (void)dealloc {
 	[self stopObserving];
+	[_block release];
 	[super dealloc];
 }