small fix for kernel objects

git-svn-id: svn://kolibrios.org@345 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge) 2007-02-14 01:16:07 +00:00
parent de9db47e0a
commit 1aafb8c866
3 changed files with 19 additions and 0 deletions

View File

@ -1003,6 +1003,8 @@ create_kernel_object:
shl ecx,8 shl ecx,8
add ecx, PROC_BASE+APP_OBJ_OFFSET add ecx, PROC_BASE+APP_OBJ_OFFSET
pushfd
cli
mov edx, [ecx+APPOBJ.fd] mov edx, [ecx+APPOBJ.fd]
mov [eax+APPOBJ.fd], edx mov [eax+APPOBJ.fd], edx
mov [eax+APPOBJ.bk], ecx mov [eax+APPOBJ.bk], ecx
@ -1010,6 +1012,7 @@ create_kernel_object:
mov [ecx+APPOBJ.fd], eax mov [ecx+APPOBJ.fd], eax
mov [edx+APPOBJ.bk], eax mov [edx+APPOBJ.bk], eax
popfd
.fail: .fail:
ret ret
@ -1019,10 +1022,13 @@ create_kernel_object:
align 4 align 4
destroy_kernel_object: destroy_kernel_object:
pushfd
cli
mov ebx, [eax+APPOBJ.fd] mov ebx, [eax+APPOBJ.fd]
mov ecx, [eax+APPOBJ.bk] mov ecx, [eax+APPOBJ.bk]
mov [ebx+APPOBJ.bk], ecx mov [ebx+APPOBJ.bk], ecx
mov [ecx+APPOBJ.fd], ebx mov [ecx+APPOBJ.fd], ebx
popfd
xor edx, edx ;clear common header xor edx, edx ;clear common header
mov [eax], edx mov [eax], edx

View File

@ -911,6 +911,7 @@ fpu_ok_1:
mov esi,process_terminated mov esi,process_terminated
call sys_msg_board_str call sys_msg_board_str
ret ret
restore .slot
iglobal iglobal
boot_sched_1 db 'Building gdt tss pointer',0 boot_sched_1 db 'Building gdt tss pointer',0

View File

@ -89,6 +89,18 @@ end if
if used DestroyObject if used DestroyObject
extrn DestroyObject extrn DestroyObject
end if 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 if used LoadCursor
extrn LoadCursor extrn LoadCursor