Skip to content

Commit

Permalink
improved PR#4038 by using ash's definition instead
Browse files Browse the repository at this point in the history
of hard-coded c_str.
  • Loading branch information
hybcloud committed Aug 13, 2023
1 parent 07f92c9 commit 970850c
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 8 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,8 @@ By @Valaphee in [#3402](https://github.com/gfx-rs/wgpu/pull/3402)

- Don't pass `vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR` unless the `VK_KHR_portability_enumeration` extension is available. By @jimblandy in[#4038](https://github.com/gfx-rs/wgpu/pull/4038).

- Enhancement of [#4038], using ash's definition instead of hard-coded c_str.

#### DX12

- DX12 doesn't support `Features::POLYGON_MODE_POINT``. By @teoxoy in [#4032](https://github.com/gfx-rs/wgpu/pull/4032).
Expand Down
10 changes: 2 additions & 8 deletions wgpu-hal/src/vulkan/instance.rs
Original file line number Diff line number Diff line change
Expand Up @@ -228,8 +228,7 @@ impl super::Instance {
if cfg!(target_os = "macos") {
// VK_EXT_metal_surface
extensions.push(ext::MetalSurface::name());
extensions
.push(CStr::from_bytes_with_nul(b"VK_KHR_portability_enumeration\0").unwrap());
extensions.push(ash::vk::KhrPortabilityEnumerationFn::name());
}

if flags.contains(crate::InstanceFlags::DEBUG) {
Expand Down Expand Up @@ -589,11 +588,6 @@ impl crate::Instance<super::Api> for super::Instance {

let extensions = Self::required_extensions(&entry, driver_api_version, desc.flags)?;

let portability_enumeration_extension =
CStr::from_bytes_with_nul(b"VK_KHR_portability_enumeration\0").unwrap();
let has_portability_enumeration_extension =
extensions.contains(&portability_enumeration_extension);

let instance_layers = entry.enumerate_instance_layer_properties().map_err(|e| {
log::info!("enumerate_instance_layer_properties: {:?}", e);
crate::InstanceError
Expand Down Expand Up @@ -667,7 +661,7 @@ impl crate::Instance<super::Api> for super::Instance {
// Avoid VUID-VkInstanceCreateInfo-flags-06559: Only ask the instance to
// enumerate incomplete Vulkan implementations (which we need on Mac) if
// we managed to find the extension that provides the flag.
if has_portability_enumeration_extension {
if extensions.contains(&ash::vk::KhrPortabilityEnumerationFn::name()) {
flags |= vk::InstanceCreateFlags::ENUMERATE_PORTABILITY_KHR;
}

Expand Down

0 comments on commit 970850c

Please sign in to comment.