implement user mode catchable exceptions, refactor system status codes to use NTLSTATUS_ prefix, update build scripts to use shared literal macros for linker arguments, update named queue lifetime cleanup to include KeNamedQueueUnpublishHandle.
This commit is contained in:
1 parent
1f5477cf66
commit
b7fcfce6f7
140 files changed
+7649
-3943
No files matched your search
@@ -150,7 +150,7 @@ int main(void) {
|
||||
|
||||
uint32_t file = 0;
|
||||
uint32_t status = open_file_view(pathView, &file);
|
||||
if (status != STATUS_SUCCESS) {
|
||||
if (status != NTLSTATUS_SUCCESS) {
|
||||
char pathBuf[260];
|
||||
print("video: failed to open input file: ");
|
||||
print(path_to_cstr(pathView, pathBuf, sizeof(pathBuf)));
|
||||
@@ -160,7 +160,7 @@ int main(void) {
|
||||
|
||||
uint64_t fileSize = 0;
|
||||
status = SysGetFileSize(file, &fileSize);
|
||||
if (status != STATUS_SUCCESS) {
|
||||
if (status != NTLSTATUS_SUCCESS) {
|
||||
SysCloseHandle(file);
|
||||
fail_status("SysGetFileSize", status);
|
||||
}
|
||||
@@ -172,7 +172,7 @@ int main(void) {
|
||||
|
||||
uint32_t mapping = 0;
|
||||
status = SysCreateFileMapping(file, SYS_VM_READ, SYS_MAP_FLAG_NONE, fileSize, &mapping);
|
||||
if (status != STATUS_SUCCESS || !mapping) {
|
||||
if (status != NTLSTATUS_SUCCESS || !mapping) {
|
||||
SysCloseHandle(file);
|
||||
fail_status("SysCreateFileMapping", status);
|
||||
}
|
||||
@@ -180,7 +180,7 @@ int main(void) {
|
||||
void* buf = 0;
|
||||
status = SysMapFile(mapping, 0, (size_t)fileSize,
|
||||
SYS_MAP_ACCESS_READ, SYS_MAP_FLAG_NONE, &buf);
|
||||
if (status != STATUS_SUCCESS || !buf) {
|
||||
if (status != NTLSTATUS_SUCCESS || !buf) {
|
||||
SysCloseHandle(mapping);
|
||||
SysCloseHandle(file);
|
||||
fail_status("SysMapFile", status);
|
||||
@@ -214,9 +214,16 @@ int main(void) {
|
||||
}
|
||||
|
||||
uint32_t surface = 0;
|
||||
status = SysCreateSurface(width, height, SYS_SURFACE_FORMAT_XRGB8888,
|
||||
SYS_SURFACE_FLAG_NONE, &surface);
|
||||
if (status != STATUS_SUCCESS || !surface) {
|
||||
SYS_CREATE_SURFACE_REQUEST surfaceReq;
|
||||
memset(&surfaceReq, 0, sizeof(surfaceReq));
|
||||
surfaceReq.Size = sizeof(surfaceReq);
|
||||
surfaceReq.Width = width;
|
||||
surfaceReq.Height = height;
|
||||
surfaceReq.Format = SYS_SURFACE_FORMAT_XRGB8888;
|
||||
surfaceReq.Flags = SYS_SURFACE_FLAG_NONE;
|
||||
surfaceReq.HandleOut = &surface;
|
||||
status = SysCreateSurface(&surfaceReq);
|
||||
if (status != NTLSTATUS_SUCCESS || !surface) {
|
||||
BinkClose(b);
|
||||
SysFreeVm(buf);
|
||||
fail_status("SysCreateSurface", status);
|
||||
@@ -225,7 +232,7 @@ int main(void) {
|
||||
void* surfaceBase = 0;
|
||||
uint32_t pitchBytes = 0;
|
||||
status = SysMapSurface(surface, &surfaceBase, &pitchBytes);
|
||||
if (status != STATUS_SUCCESS || !surfaceBase || pitchBytes < width * sizeof(uint32_t)) {
|
||||
if (status != NTLSTATUS_SUCCESS || !surfaceBase || pitchBytes < width * sizeof(uint32_t)) {
|
||||
SysCloseHandle(surface);
|
||||
BinkClose(b);
|
||||
SysFreeVm(buf);
|
||||
@@ -253,7 +260,7 @@ int main(void) {
|
||||
BinkCopyToBuffer(b, surfaceBase, pitchBytes, height, 0, 0, BINKSURFACE32);
|
||||
|
||||
status = SysPresentSurface(surface, &fullFrame, 1);
|
||||
if (status != STATUS_SUCCESS) {
|
||||
if (status != NTLSTATUS_SUCCESS) {
|
||||
SysCloseHandle(surface);
|
||||
BinkClose(b);
|
||||
SysFreeVm(buf);
|
||||
|
||||
Reference in new issue
Block a user