wsi: remove get_sorted_vk_formats duplication
authorOleksii Bozhenko <oleksii.bozhenko@globallogic.com>
Wed, 12 Apr 2023 09:53:54 +0000 (12:53 +0300)
committerMarge Bot <emma+marge@anholt.net>
Wed, 12 Apr 2023 22:07:32 +0000 (22:07 +0000)
Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/commit/37a8b2d12ea97775b725172d1f89c1bd59fc98cf
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8727

Signed-off-by: Oleksii Bozhenko oleksii.bozhenko@globallogic.com
Reviewed-by: Alejandro PiƱeiro <apinheiro@igalia.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22337>

src/vulkan/wsi/wsi_common_x11.c

index c7798c3..2ca68e5 100644 (file)
@@ -827,10 +827,12 @@ get_sorted_vk_formats(VkIcdSurfaceBase *surface, struct wsi_device *wsi_device,
    }
 
    for (unsigned i = 0; i < ARRAY_SIZE(formats); i++) {
-      if (formats[i] == sorted_formats[0])
-         continue;
+      for (unsigned j = 0; j < *count; j++)
+         if (formats[i] == sorted_formats[j])
+            goto next_format;
       if (rgb_component_bits_are_equal(formats[i], visual))
          sorted_formats[(*count)++] = formats[i];
+next_format:;
    }
 
    if (wsi_device->force_bgra8_unorm_first) {