@@ -2630,6 +2630,7 @@ pub fn renameatW(
2630
2630
defer windows .CloseHandle (src_fd );
2631
2631
2632
2632
var need_fallback = true ;
2633
+ var rc : windows.NTSTATUS = undefined ;
2633
2634
if (comptime builtin .target .os .version_range .windows .min .isAtLeast (.win10_rs1 )) {
2634
2635
const struct_buf_len = @sizeOf (windows .FILE_RENAME_INFORMATION_EX ) + (MAX_PATH_BYTES - 1 );
2635
2636
var rename_info_buf : [struct_buf_len ]u8 align (@alignOf (windows .FILE_RENAME_INFORMATION_EX )) = undefined ;
@@ -2648,7 +2649,7 @@ pub fn renameatW(
2648
2649
.FileName = undefined ,
2649
2650
};
2650
2651
@memcpy (@as ([* ]u16 , & rename_info .FileName )[0.. new_path_w .len ], new_path_w );
2651
- const rc = windows .ntdll .NtSetInformationFile (
2652
+ rc = windows .ntdll .NtSetInformationFile (
2652
2653
src_fd ,
2653
2654
& io_status_block ,
2654
2655
rename_info ,
@@ -2681,27 +2682,27 @@ pub fn renameatW(
2681
2682
};
2682
2683
@memcpy (@as ([* ]u16 , & rename_info .FileName )[0.. new_path_w .len ], new_path_w );
2683
2684
2684
- const rc =
2685
+ rc =
2685
2686
windows .ntdll .NtSetInformationFile (
2686
2687
src_fd ,
2687
2688
& io_status_block ,
2688
2689
rename_info ,
2689
2690
@intCast (struct_len ), // already checked for error.NameTooLong
2690
2691
.FileRenameInformation ,
2691
2692
);
2693
+ }
2692
2694
2693
- switch (rc ) {
2694
- .SUCCESS = > {},
2695
- .INVALID_HANDLE = > unreachable ,
2696
- .INVALID_PARAMETER = > unreachable ,
2697
- .OBJECT_PATH_SYNTAX_BAD = > unreachable ,
2698
- .ACCESS_DENIED = > return error .AccessDenied ,
2699
- .OBJECT_NAME_NOT_FOUND = > return error .FileNotFound ,
2700
- .OBJECT_PATH_NOT_FOUND = > return error .FileNotFound ,
2701
- .NOT_SAME_DEVICE = > return error .RenameAcrossMountPoints ,
2702
- .OBJECT_NAME_COLLISION = > return error .PathAlreadyExists ,
2703
- else = > return windows .unexpectedStatus (rc ),
2704
- }
2695
+ switch (rc ) {
2696
+ .SUCCESS = > {},
2697
+ .INVALID_HANDLE = > unreachable ,
2698
+ .INVALID_PARAMETER = > unreachable ,
2699
+ .OBJECT_PATH_SYNTAX_BAD = > unreachable ,
2700
+ .ACCESS_DENIED = > return error .AccessDenied ,
2701
+ .OBJECT_NAME_NOT_FOUND = > return error .FileNotFound ,
2702
+ .OBJECT_PATH_NOT_FOUND = > return error .FileNotFound ,
2703
+ .NOT_SAME_DEVICE = > return error .RenameAcrossMountPoints ,
2704
+ .OBJECT_NAME_COLLISION = > return error .PathAlreadyExists ,
2705
+ else = > return windows .unexpectedStatus (rc ),
2705
2706
}
2706
2707
}
2707
2708
0 commit comments