From 1aafb8c8662aaa9d6561be61797c7156ce9970af Mon Sep 17 00:00:00 2001 From: "Sergey Semyonov (Serge)" Date: Wed, 14 Feb 2007 01:16:07 +0000 Subject: [PATCH] small fix for kernel objects git-svn-id: svn://kolibrios.org@345 a494cfbc-eb01-0410-851d-a64ba20cac60 --- kernel/trunk/core/dll.inc | 6 ++++++ kernel/trunk/core/sys32.inc | 1 + kernel/trunk/drivers/imports.inc | 12 ++++++++++++ 3 files changed, 19 insertions(+) diff --git a/kernel/trunk/core/dll.inc b/kernel/trunk/core/dll.inc index 183468570a..74601bb9ee 100644 --- a/kernel/trunk/core/dll.inc +++ b/kernel/trunk/core/dll.inc @@ -1003,6 +1003,8 @@ create_kernel_object: shl ecx,8 add ecx, PROC_BASE+APP_OBJ_OFFSET + pushfd + cli mov edx, [ecx+APPOBJ.fd] mov [eax+APPOBJ.fd], edx mov [eax+APPOBJ.bk], ecx @@ -1010,6 +1012,7 @@ create_kernel_object: mov [ecx+APPOBJ.fd], eax mov [edx+APPOBJ.bk], eax + popfd .fail: ret @@ -1019,10 +1022,13 @@ create_kernel_object: align 4 destroy_kernel_object: + pushfd + cli mov ebx, [eax+APPOBJ.fd] mov ecx, [eax+APPOBJ.bk] mov [ebx+APPOBJ.bk], ecx mov [ecx+APPOBJ.fd], ebx + popfd xor edx, edx ;clear common header mov [eax], edx diff --git a/kernel/trunk/core/sys32.inc b/kernel/trunk/core/sys32.inc index a14badd44b..f55d4a1e29 100644 --- a/kernel/trunk/core/sys32.inc +++ b/kernel/trunk/core/sys32.inc @@ -911,6 +911,7 @@ fpu_ok_1: mov esi,process_terminated call sys_msg_board_str ret +restore .slot iglobal boot_sched_1 db 'Building gdt tss pointer',0 diff --git a/kernel/trunk/drivers/imports.inc b/kernel/trunk/drivers/imports.inc index 05535bf36d..f846b12420 100644 --- a/kernel/trunk/drivers/imports.inc +++ b/kernel/trunk/drivers/imports.inc @@ -89,6 +89,18 @@ end if if used DestroyObject extrn DestroyObject end if +if used CreateEvent + extrn CreateEvent +end if +if used RaiseEvent + extrn RaiseEvent +end if +if used WaitEvent + extrn WaitEvent +end if +if used DestroyEvent + extrn DestroyEvent +end if if used LoadCursor extrn LoadCursor