Skip to content

Commit cd3a125

Browse files
authored
Rollup merge of rust-lang#139382 - ChrisDenton:windows-bindgen-0-61, r=Mark-Simulacrum
Update windows-bindgen to 0.61.0 This updates the automatically generate Windows API bindings. Not much changed this time: - There's now `Default` implementations for many types, which is convenient. It does however conflict with one place where we implemented a non-zeroed default (to set the length field). But that's no big problem. - The `--no-core` flag has been renamed to `--no-deps` to more accurately reflect its meaning (i.e. generate all necessary code without requiring additional dependencies). - The `--link` flag allows us to set the location of the `link!` macro. Currently we use our workspace's `windows_targets` crate but we could move it into library/std using `--link`. However, this would need to be co-ordinated with the `backtrace` crate (which is a separate crate but included in std using `#[path]`). So I've left that for another time.
2 parents f1124a0 + 49287f3 commit cd3a125

File tree

4 files changed

+285
-28
lines changed

4 files changed

+285
-28
lines changed

Diff for: std/src/sys/fs/windows/remove_dir_all.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ fn open_link_no_reparse(
9595
ObjectName: &mut path_str,
9696
RootDirectory: parent.as_raw_handle(),
9797
Attributes: ATTRIBUTES.load(Ordering::Relaxed),
98-
..c::OBJECT_ATTRIBUTES::default()
98+
..c::OBJECT_ATTRIBUTES::with_length()
9999
};
100100
let share = c::FILE_SHARE_DELETE | c::FILE_SHARE_READ | c::FILE_SHARE_WRITE;
101101
let options = c::FILE_OPEN_REPARSE_POINT | options;

Diff for: std/src/sys/pal/windows/c.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ impl UNICODE_STRING {
4444
}
4545
}
4646

47-
impl Default for OBJECT_ATTRIBUTES {
48-
fn default() -> Self {
47+
impl OBJECT_ATTRIBUTES {
48+
pub fn with_length() -> Self {
4949
Self {
5050
Length: size_of::<Self>() as _,
5151
RootDirectory: ptr::null_mut(),

Diff for: std/src/sys/pal/windows/c/bindings.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
--out windows_sys.rs
22
--flat
33
--sys
4-
--no-core
4+
--no-deps
5+
--link windows_targets
56
--filter
67
!INVALID_HANDLE_VALUE
78
ABOVE_NORMAL_PRIORITY_CLASS
@@ -19,7 +20,6 @@ ALL_PROCESSOR_GROUPS
1920
ARM64_NT_NEON128
2021
BELOW_NORMAL_PRIORITY_CLASS
2122
bind
22-
BOOL
2323
BY_HANDLE_FILE_INFORMATION
2424
CALLBACK_CHUNK_FINISHED
2525
CALLBACK_STREAM_SWITCH

0 commit comments

Comments
 (0)