summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main.rs60
1 files changed, 29 insertions, 31 deletions
diff --git a/src/main.rs b/src/main.rs
index 6c06a26..7c04245 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -350,11 +350,11 @@ impl Surreality {
     }
 
     // Request the LunarG validation layer, when appropriate.
+    let validation_layer_name = vk::ExtensionName::from_bytes(
+                                    b"VK_LAYER_KHRONOS_validation");
     if enable_validation {
-      let layer_name = vk::ExtensionName::from_bytes(
-                           b"VK_LAYER_KHRONOS_validation");
-      if available_layers.contains(&layer_name) {
-        layers.push(layer_name.as_ptr());
+      if available_layers.contains(&validation_layer_name) {
+        layers.push(validation_layer_name.as_ptr());
 
         self.enable_validation.set(enable_validation).unwrap();
       } else {
@@ -506,48 +506,46 @@ impl Surreality {
       let mut extensions = Vec::new();
       let mut layers = Vec::new();
 
+      let validation_layer_name = vk::ExtensionName::from_bytes(
+                                      b"VK_LAYER_KHRONOS_validation");
       if *self.enable_validation.get().unwrap() {
-        let layer_name = vk::ExtensionName::from_bytes(
-                             b"VK_LAYER_KHRONOS_validation");
         //   It's not concerning if this isn't supported, because device
         // layers are ignored on recent versions, they're purely historical.
-        if available_extensions.contains(&layer_name) {
-          layers.push(layer_name.as_ptr());
+        if available_extensions.contains(&validation_layer_name) {
+          layers.push(validation_layer_name.as_ptr());
         }
       }
 
+      let portability_extension_name = vk::ExtensionName::from_bytes(
+                                           b"VK_KHR_portability_subset");
       if *self.enable_portability.get().unwrap() {
         //   This is untested, since the only scenario where it would come up
         // is on a Mac, which we don't actually support. Sorry, and good luck.
-        let layer_name = vk::ExtensionName::from_bytes(
-                             b"VK_KHR_portability_subset");
-        if available_extensions.contains(&layer_name) {
-          extensions.push(layer_name.as_ptr());
+        if available_extensions.contains(&portability_extension_name) {
+          extensions.push(portability_extension_name.as_ptr());
         }
       }
 
-      {
-        let layer_name = vk::KHR_SWAPCHAIN_EXTENSION.name;
-        if available_extensions.contains(&layer_name) {
-          //   It's important that we not call the swapchain extension
-          // functions until we've verified the extension is supported. To
-          // emphasize that, we do it on a separate line.
-          //
-          //   We've done this check once already, in scoring, and now here
-          // we are discarding its results a second time. We'll do it for the
-          // third and last time in swapchain creation.
-          if let Acceptable::Accepted(_)
-                 = self.find_device_swapchain_features(&physical_device)?
-          {
-            extensions.push(layer_name.as_ptr());
-
-            self.enable_swapchain.set(true).unwrap();
-          } else {
-            self.enable_swapchain.set(false).unwrap();
-          }
+      let swapchain_extension_name = vk::KHR_SWAPCHAIN_EXTENSION.name;
+      if available_extensions.contains(&swapchain_extension_name) {
+        //   It's important that we not call the swapchain extension
+        // functions until we've verified the extension is supported. To
+        // emphasize that, we do it on a separate line.
+        //
+        //   We've done this check once already, in scoring, and now here
+        // we are discarding its results a second time. We'll do it for the
+        // third and last time in swapchain creation.
+        if let Acceptable::Accepted(_)
+               = self.find_device_swapchain_features(&physical_device)?
+        {
+          extensions.push(swapchain_extension_name.as_ptr());
+
+          self.enable_swapchain.set(true).unwrap();
         } else {
           self.enable_swapchain.set(false).unwrap();
         }
+      } else {
+        self.enable_swapchain.set(false).unwrap();
       }
 
       //   We have one or more queue family indices; we don't know a priori