error: add we_set_win_error() and we_clear_win_error() apis

This commit is contained in:
Bert Belder 2017-09-04 05:56:33 +02:00
parent d7586179eb
commit f353ab429e
2 changed files with 15 additions and 0 deletions

View File

@ -41,3 +41,15 @@ errno_t we_map_win_error_to_errno(DWORD error) {
}
#pragma warning(pop)
void we_set_win_error(DWORD error) {
if (error == 0)
error = GetLastError();
else
SetLastError(error);
errno = we_map_win_error_to_errno(error);
}
void we_clear_win_error(void) {
SetLastError(ERROR_SUCCESS);
}

View File

@ -9,4 +9,7 @@ DWORD we_map_ntstatus_to_win_error(NTSTATUS ntstatus);
DWORD we_map_ntstatus_to_ws_error(NTSTATUS ntstatus);
errno_t we_map_win_error_to_errno(DWORD error);
void we_set_win_error(DWORD error);
void we_clear_win_error(void);
#endif /* ERROR_H_ */