loader: Fix Wayland support

All that was needed was to fix some misplaced braces, fix a couple of
copy+paste problems from Mir, and add a lookup function.  Getting Mir
support working should be pretty easy.

Conflicts:
	layers/swapchain.cpp
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 120bf39..1434033 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,7 +20,7 @@
     set(DisplayServer Android)
 elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
     #   TODO: Basic support is present for Xlib but is untested.
-    #         Wayland/Mir support is stubbed in but unimplemented and untested.
+    #         Mir support is stubbed in but unimplemented and untested.
     option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
     option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" OFF)
     option(BUILD_WSI_WAYLAND_SUPPORT "Build Wayland WSI support" OFF)
diff --git a/layers/swapchain.cpp b/layers/swapchain.cpp
index af22511..d622dd6 100644
--- a/layers/swapchain.cpp
+++ b/layers/swapchain.cpp
@@ -206,38 +206,44 @@
 #ifdef VK_USE_PLATFORM_ANDROID_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_ANDROID_SURFACE_EXTENSION_NAME) == 0) {
 
-            my_data->instanceMap[instance].androidSurfaceExtensionEnabled = true;
+            my_data->instanceMap[instance].androidSurfaceExtensionEnabled =
+                true;
+        }
 #endif // VK_USE_PLATFORM_ANDROID_KHR
 #ifdef VK_USE_PLATFORM_MIR_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_MIR_SURFACE_EXTENSION_NAME) == 0) {
 
             my_data->instanceMap[instance].mirSurfaceExtensionEnabled = true;
+        }
 #endif // VK_USE_PLATFORM_MIR_KHR
 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME) == 0) {
 
-            my_data->instanceMap[instance].waylandSurfaceExtensionEnabled = true;
+            my_data->instanceMap[instance].waylandSurfaceExtensionEnabled =
+		true;
+        }
 #endif // VK_USE_PLATFORM_WAYLAND_KHR
 #ifdef VK_USE_PLATFORM_WIN32_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_WIN32_SURFACE_EXTENSION_NAME) == 0) {
 
             my_data->instanceMap[instance].win32SurfaceExtensionEnabled = true;
+        }
 #endif // VK_USE_PLATFORM_WIN32_KHR
 #ifdef VK_USE_PLATFORM_XCB_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_XCB_SURFACE_EXTENSION_NAME) == 0) {
 
             my_data->instanceMap[instance].xcbSurfaceExtensionEnabled = true;
+        }
 #endif // VK_USE_PLATFORM_XCB_KHR
 #ifdef VK_USE_PLATFORM_XLIB_KHR
         if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_XLIB_SURFACE_EXTENSION_NAME) == 0) {
 
             my_data->instanceMap[instance].xlibSurfaceExtensionEnabled = true;
-#endif // VK_USE_PLATFORM_XLIB_KHR
         }
+#endif // VK_USE_PLATFORM_XLIB_KHR
     }
 }
 
-
 #include "vk_dispatch_table_helper.h"
 static void initSwapchain(layer_data *my_data, const VkAllocationCallbacks *pAllocator)
 {
diff --git a/loader/loader.c b/loader/loader.c
index ccee9bd..5462355 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1386,6 +1386,9 @@
 #ifdef VK_USE_PLATFORM_XCB_KHR
     LOOKUP_GIPA(GetPhysicalDeviceXcbPresentationSupportKHR, false);
 #endif
+#ifdef VK_USE_PLATFORM_WAYLAND_KHR
+    LOOKUP_GIPA(GetPhysicalDeviceWaylandPresentationSupportKHR, false);
+#endif
 
 #undef LOOKUP_GIPA
 
diff --git a/loader/wsi.c b/loader/wsi.c
index 05945fb..e5e0140 100644
--- a/loader/wsi.c
+++ b/loader/wsi.c
@@ -623,7 +623,7 @@
  */
 LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
 vkCreateWaylandSurfaceKHR(VkInstance instance,
-                          const VkMirSurfaceCreateInfoKHR *pCreateInfo,
+                          const VkWaylandSurfaceCreateInfoKHR *pCreateInfo,
                           const VkAllocationCallbacks *pAllocator,
                           VkSurfaceKHR *pSurface) {
     const VkLayerInstanceDispatchTable *disp;
@@ -641,7 +641,7 @@
  */
 VKAPI_ATTR VkResult VKAPI_CALL
 loader_CreateWaylandSurfaceKHR(VkInstance instance,
-                               const VkMirSurfaceCreateInfoKHR *pCreateInfo,
+                               const VkWaylandSurfaceCreateInfoKHR *pCreateInfo,
                                const VkAllocationCallbacks *pAllocator,
                                VkSurfaceKHR *pSurface) {
     struct loader_instance *ptr_instance = loader_get_instance(instance);
@@ -1021,6 +1021,7 @@
                     ? (void *)vkGetPhysicalDeviceMirPresentationSupportKHR
                     : NULL;
         return true;
+    }
 #endif // VK_USE_PLATFORM_MIR_KHR
 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
         /*
@@ -1038,6 +1039,7 @@
                     ? (void *)vkGetPhysicalDeviceWaylandPresentationSupportKHR
                     : NULL;
             return true;
+        }
 #endif // VK_USE_PLATFORM_WAYLAND_KHR
 #ifdef VK_USE_PLATFORM_XCB_KHR
             /*