diff --git a/kernel/trunk/hid/mousedrv.inc b/kernel/trunk/hid/mousedrv.inc index 7ae6c3a742..8b8588c7ab 100644 --- a/kernel/trunk/hid/mousedrv.inc +++ b/kernel/trunk/hid/mousedrv.inc @@ -124,6 +124,18 @@ save_draw_mouse: cmp esi, [current_cursor] je .draw + mov eax, [TASK_COUNT] + movzx eax, word [WIN_POS+eax*2] + shl eax, 8 + + cmp eax, edx + je @F + + mov esi, [def_cursor] + cmp esi, [current_cursor] + je .draw + +@@: push esi call [_display.select_cursor] mov [current_cursor], esi diff --git a/kernel/trunk/video/cursors.inc b/kernel/trunk/video/cursors.inc index 136f260ff3..fa29fd9998 100644 --- a/kernel/trunk/video/cursors.inc +++ b/kernel/trunk/video/cursors.inc @@ -447,16 +447,11 @@ endp ;------------------------------------------------------------------------------ align 4 proc delete_cursor stdcall, hcursor:dword - locals - hsrv dd ? - io_code dd ? - input dd ? - inp_size dd ? - output dd ? - out_size dd ? - endl + +; DEBUGF 1,'K : delete_cursor %x\n', [hcursor] mov esi, [hcursor] + cmp [esi+CURSOR.magic], 'CURS' jne .fail