@@ -2,9 +2,9 @@ use crate::{
2
2
auxil:: { self , dxgi:: result:: HResult as _} ,
3
3
dx12:: SurfaceTarget ,
4
4
} ;
5
- use std:: { mem, sync:: Arc , thread} ;
5
+ use std:: { mem, ptr , sync:: Arc , thread} ;
6
6
use winapi:: {
7
- shared:: { dxgi, dxgi1_2, windef, winerror} ,
7
+ shared:: { dxgi, dxgi1_2, minwindef :: DWORD , windef, winerror} ,
8
8
um:: { d3d12, d3d12sdklayers, winuser} ,
9
9
} ;
10
10
@@ -382,16 +382,17 @@ impl crate::Adapter<super::Api> for super::Adapter {
382
382
// the features that use SRV/UAVs using the no-depth format.
383
383
let mut data_no_depth = d3d12:: D3D12_FEATURE_DATA_FORMAT_SUPPORT {
384
384
Format : no_depth_format,
385
- Support1 : unsafe { mem :: zeroed ( ) } ,
386
- Support2 : unsafe { mem :: zeroed ( ) } ,
385
+ Support1 : d3d12 :: D3D12_FORMAT_SUPPORT1_NONE ,
386
+ Support2 : d3d12 :: D3D12_FORMAT_SUPPORT2_NONE ,
387
387
} ;
388
388
if raw_format != no_depth_format {
389
389
// Only-recheck if we're using a different format
390
390
assert_eq ! ( winerror:: S_OK , unsafe {
391
391
self . device. CheckFeatureSupport (
392
392
d3d12:: D3D12_FEATURE_FORMAT_SUPPORT ,
393
- & mut data_no_depth as * mut _ as * mut _,
394
- mem:: size_of:: <d3d12:: D3D12_FEATURE_DATA_FORMAT_SUPPORT >( ) as _,
393
+ ptr:: addr_of_mut!( data_no_depth) . cast( ) ,
394
+ DWORD :: try_from( mem:: size_of:: <d3d12:: D3D12_FEATURE_DATA_FORMAT_SUPPORT >( ) )
395
+ . unwrap( ) ,
395
396
)
396
397
} ) ;
397
398
} else {
0 commit comments