X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=Nt32Pkg%2FTimerDxe%2FTimer.c;fp=Nt32Pkg%2FTimerDxe%2FTimer.c;h=8eb4865a83af2cc180478bd87cc97ae5f1381ede;hb=0b94e31981fde83116598dc7a2c8a346d46fd3cf;hp=fd75c160c461379fbe57264e6042dcb40d65e200;hpb=5f300691d0ef724c1580924da6ba6750794d918e;p=mirror_edk2.git diff --git a/Nt32Pkg/TimerDxe/Timer.c b/Nt32Pkg/TimerDxe/Timer.c index fd75c160c4..8eb4865a83 100644 --- a/Nt32Pkg/TimerDxe/Timer.c +++ b/Nt32Pkg/TimerDxe/Timer.c @@ -536,7 +536,9 @@ Returns: EFI_STATUS Status; UINTN Result; EFI_HANDLE Handle; - + EFI_HANDLE hSourceProcessHandle; + EFI_HANDLE hSourceHandle; + EFI_HANDLE hTargetProcessHandle; // // Make sure the Timer Architectural Protocol is not already installed in the system // @@ -545,16 +547,19 @@ Returns: // // Get the CPU Architectural Protocol instance // - Status = gBS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, &mCpu); + Status = gBS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID**)&mCpu); ASSERT_EFI_ERROR (Status); // // Get our handle so the timer tick thread can suspend // + hSourceProcessHandle = gWinNt->GetCurrentProcess (); + hSourceHandle = gWinNt->GetCurrentThread (); + hTargetProcessHandle = gWinNt->GetCurrentProcess (); Result = gWinNt->DuplicateHandle ( - gWinNt->GetCurrentProcess (), - gWinNt->GetCurrentThread (), - gWinNt->GetCurrentProcess (), + hSourceProcessHandle, + hSourceHandle, + hTargetProcessHandle, &mNtMainThreadHandle, 0, FALSE,