Ignore:
Timestamp:
Feb 23, 2001, 3:57:55 AM (25 years ago)
Author:
bird
Message:

Calltable fixes. Handle event. New 14062e kernels.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/win32k/ldr/mytkStartProcess.asm

    r4347 r5247  
    1 ; $Id: mytkStartProcess.asm,v 1.3 2000-10-01 02:58:19 bird Exp $
     1; $Id: mytkStartProcess.asm,v 1.4 2001-02-23 02:57:55 bird Exp $
    22;
    33; tkStartProcess overloader. Needed to clear the loader semaphore
     
    2626    extrn pLdrSem:DWORD
    2727    extrn _LDRClearSem@0:PROC
    28     extrn _KSEMRequestMutex@8:PROC
    2928    extrn _KSEMQueryMutex@8:PROC
    3029
     
    5352    ;
    5453    extrn _tkStartProcess:PROC
     54
    5555
    5656;
     
    8888    push    eax                         ; Push address of usage count pointer.
    8989    push    pLdrSem                     ; Push pointer to loader semaphore ( = handle).
    90     call    near ptr FLAT:_KSEMQueryMutex@8
     90    call    _KSEMQueryMutex@8
    9191    or      eax, eax                    ; Check return code. (1 = our / free; 0 = not our but take)
    9292    pop     eax                         ; Pops usage count.
     
    9999    cmp     eax, 2                      ; If usage count > 1 then issue a release. (should not happen here)
    100100    jl      mtksp_ret                   ; jmp if usage count < 2. (tkStartProcess or tkExecPgm will free the last usage).
    101     call    near ptr FLAT:_LDRClearSem@0
     101    call    _LDRClearSem@0
    102102
    103103mtksp_ret:
     
    105105    pop     ecx
    106106    pop     eax
    107     jmp     near ptr FLAT:_tkStartProcess
     107    jmp     _tkStartProcess
    108108_mytkStartProcess ENDP
    109109
Note: See TracChangeset for help on using the changeset viewer.