267,15 → 267,13 |
jne .fail |
; cmp [eax+CURSOR.size], CURSOR_SIZE |
; jne .fail |
mov ebx, [CURRENT_TASK] |
shl ebx, 8 |
xchg eax, [ebx+SLOT_BASE+APPDATA.cursor] |
mov ebx, [current_slot] |
xchg eax, [ebx+APPDATA.cursor] |
ret |
.fail: |
mov eax, [def_cursor] |
mov ebx, [CURRENT_TASK] |
shl ebx, 8 |
xchg eax, [ebx+SLOT_BASE+APPDATA.cursor] |
mov ebx, [current_slot] |
xchg eax, [ebx+APPDATA.cursor] |
ret |
endp |
|
398,12 → 396,11 |
cmp ebx, [esi+CURSOR.pid] |
jne .fail |
|
mov ebx, [CURRENT_TASK] |
shl ebx, 8 |
cmp esi, [ebx+SLOT_BASE+APPDATA.cursor] |
mov ebx, [current_slot] |
cmp esi, [ebx+APPDATA.cursor] |
jne @F |
mov eax, [def_cursor] |
mov [ebx+SLOT_BASE+APPDATA.cursor], eax |
mov [ebx+APPDATA.cursor], eax |
@@: |
mov eax, [hcursor] |
call [eax+APPOBJ.destroy] |