From d1edec0a33dd6c10249c094c6ccb60c6c98d7b27 Mon Sep 17 00:00:00 2001 From: Elvin Li Date: Tue, 29 Oct 2013 06:47:47 +0000 Subject: [PATCH] Fix the bug that SetTimer () cannot work when Type is TimerPeriodic and TriggerTime is 0. Signed-off-by: Elvin Li Reviewed-by: Liming Gao git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14811 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Core/Dxe/Event/Timer.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/MdeModulePkg/Core/Dxe/Event/Timer.c b/MdeModulePkg/Core/Dxe/Event/Timer.c index 3b17ae917c..087e55e649 100644 --- a/MdeModulePkg/Core/Dxe/Event/Timer.c +++ b/MdeModulePkg/Core/Dxe/Event/Timer.c @@ -1,7 +1,7 @@ /** @file Core Timer Services -Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -281,6 +281,9 @@ CoreSetTimer ( if (Type != TimerCancel) { if (Type == TimerPeriodic) { + if (TriggerTime == 0) { + gTimer->GetTimerPeriod (gTimer, &TriggerTime); + } Event->Timer.Period = TriggerTime; } -- 2.39.2