From ffadc63799c2f95dffd081fe911bcbbce37e53ec Mon Sep 17 00:00:00 2001 From: darylm503 Date: Wed, 25 Aug 2010 23:06:43 +0000 Subject: Fix the InternalMemScanMem* functions. They were returning the character AFTER the match instead of the matching character. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10821 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Library/BaseMemoryLib/MemLibGeneric.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MdePkg/Library/BaseMemoryLib/MemLibGeneric.c b/MdePkg/Library/BaseMemoryLib/MemLibGeneric.c index 845016ded5..1e3c4c3f13 100644 --- a/MdePkg/Library/BaseMemoryLib/MemLibGeneric.c +++ b/MdePkg/Library/BaseMemoryLib/MemLibGeneric.c @@ -163,7 +163,7 @@ InternalMemScanMem8 ( Pointer = (CONST UINT8*)Buffer; do { if (*(Pointer++) == Value) { - return Pointer; + return --Pointer; } } while (--Length != 0); return NULL; @@ -193,7 +193,7 @@ InternalMemScanMem16 ( Pointer = (CONST UINT16*)Buffer; do { if (*(Pointer++) == Value) { - return Pointer; + return --Pointer; } } while (--Length != 0); return NULL; @@ -223,7 +223,7 @@ InternalMemScanMem32 ( Pointer = (CONST UINT32*)Buffer; do { if (*(Pointer++) == Value) { - return Pointer; + return --Pointer; } } while (--Length != 0); return NULL; @@ -253,7 +253,7 @@ InternalMemScanMem64 ( Pointer = (CONST UINT64*)Buffer; do { if (*(Pointer++) == Value) { - return Pointer; + return --Pointer; } } while (--Length != 0); return NULL; -- cgit v1.2.3