authorgravatar for dev@sgregoratto.meStephen Gregoratto <dev@sgregoratto.me> 2024-04-13 15:25:55+10:00
committergravatar for dev@sgregoratto.meStephen Gregoratto <dev@sgregoratto.me> 2024-07-17 23:05:31+10:00
log1735455099cb75acb970f549e579368e2a447405
treeff3d32bf67ef44e516be9c192a8f2f43352adfb4
parent9d9b5a11e873cc15e3f1b6e506ecf22c8380c87d

QueryObjectName: Add error union


1 files changed, 8 insertions(+), 1 deletions(-)

lib/std/os/windows.zig+8-1
...@@ -1190,7 +1190,14 @@ pub fn SetFilePointerEx_CURRENT_get(handle: HANDLE) SetFilePointerError!u64 {...@@ -1190,7 +1190,14 @@ pub fn SetFilePointerEx_CURRENT_get(handle: HANDLE) SetFilePointerError!u64 {
1190 return @as(u64, @bitCast(result));1190 return @as(u64, @bitCast(result));
1191}1191}
11921192
1193pub fn QueryObjectName(handle: HANDLE, out_buffer: []u16) ![]u16 {1193pub const QueryObjectNameError = error{
1194 AccessDenied,
1195 InvalidHandle,
1196 NameTooLong,
1197 Unexpected,
1198};
1199
1200pub fn QueryObjectName(handle: HANDLE, out_buffer: []u16) QueryObjectNameError![]u16 {
1194 const out_buffer_aligned = mem.alignInSlice(out_buffer, @alignOf(OBJECT_NAME_INFORMATION)) orelse return error.NameTooLong;1201 const out_buffer_aligned = mem.alignInSlice(out_buffer, @alignOf(OBJECT_NAME_INFORMATION)) orelse return error.NameTooLong;
11951202
1196 const info = @as(*OBJECT_NAME_INFORMATION, @ptrCast(out_buffer_aligned));1203 const info = @as(*OBJECT_NAME_INFORMATION, @ptrCast(out_buffer_aligned));