Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8955f3f7 authored by Chia-I Wu's avatar Chia-I Wu
Browse files

vulkan: fix vkinfo with layer extensions

vkinfo enable layers only when options.validate is true.  We should use
layer extensions, such as VK_EXT_debug_report, only when layers are
enabled.

Bug: 28317797
Change-Id: I02bb34b728f3f3072111444194ee97065e38e401
parent d3b1450e
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -162,8 +162,11 @@ void GatherGpuInfo(VkPhysicalDevice gpu,
    uint32_t num_extensions = 0;
    for (const auto& desired_ext : kDesiredExtensions) {
        bool available = HasExtension(info.extensions, desired_ext);
        for (size_t i = 0; !available && i < info.layer_extensions.size(); i++)
        if (options.validate) {
            for (size_t i = 0; !available && i < info.layer_extensions.size();
                 i++)
                available = HasExtension(info.layer_extensions[i], desired_ext);
        }
        if (available)
            extensions[num_extensions++] = desired_ext;
    }
@@ -236,8 +239,12 @@ void GatherInfo(VulkanInfo* info, const Options& options) {
    uint32_t num_extensions = 0;
    for (const auto& desired_ext : kDesiredExtensions) {
        bool available = HasExtension(info->extensions, desired_ext);
        for (size_t i = 0; !available && i < info->layer_extensions.size(); i++)
            available = HasExtension(info->layer_extensions[i], desired_ext);
        if (options.validate) {
            for (size_t i = 0; !available && i < info->layer_extensions.size();
                 i++)
                available =
                    HasExtension(info->layer_extensions[i], desired_ext);
        }
        if (available)
            extensions[num_extensions++] = desired_ext;
    }