Bug 15383 (Swapchain): Treat VkSurfaceKHR as opaque--don't look inside it.
diff --git a/layers/swapchain.cpp b/layers/swapchain.cpp
index b475889..c4ae611 100644
--- a/layers/swapchain.cpp
+++ b/layers/swapchain.cpp
@@ -79,24 +79,9 @@
 static VkBool32 validateSurface(layer_data *my_data, VkSurfaceKHR surface, char *fn)
 {
     VkBool32 skipCall = VK_FALSE;
-    bool found_error = false;
-
     SwpSurface *pSurface = &my_data->surfaceMap[surface];
+
     if ((pSurface == NULL) || (pSurface->surface != surface)) {
-        found_error = true;
-    } else {
-#if !defined(__ANDROID__)
-        VkIcdSurfaceBase *pIcdSurface = (VkIcdSurfaceBase *) surface;
-        if (pSurface->platform != pIcdSurface->platform) {
-            found_error = true;
-        }
-#else  // !defined(__ANDROID__)
-        if (pSurface->platform != VK_ICD_WSI_PLATFORM_ANDROID) {
-            found_error = true;
-        }
-#endif // !defined(__ANDROID__)
-    }
-    if (found_error) {
         skipCall |= LOG_ERROR(VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT, surface, "VkSurfaceKHR",
                               SWAPCHAIN_INVALID_HANDLE,
                               "%s() called with an invalid surface object.",
@@ -426,7 +411,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_ANDROID;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);
@@ -482,7 +466,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_MIR;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);
@@ -576,7 +559,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_WAYLAND;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);
@@ -670,7 +652,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_WIN32;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);
@@ -763,7 +744,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_XCB;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);
@@ -858,7 +838,6 @@
             // Record the VkSurfaceKHR returned by the ICD:
             my_data->surfaceMap[*pSurface].surface = *pSurface;
             my_data->surfaceMap[*pSurface].pInstance = pInstance;
-            my_data->surfaceMap[*pSurface].platform = VK_ICD_WSI_PLATFORM_XLIB;
             // Point to the associated SwpInstance:
             pInstance->surfaces[*pSurface] = &my_data->surfaceMap[*pSurface];
             skipCall |= validateSurface(my_data, *pSurface, (char *) __FUNCTION__);