summaryrefslogtreecommitdiffstats
path: root/MdePkg/Library/BaseUefiDecompressLib
diff options
context:
space:
mode:
authorqhuang8 <qhuang8@6f19259b-4bc3-4df7-8a09-765794883524>2010-05-10 00:57:06 +0000
committerqhuang8 <qhuang8@6f19259b-4bc3-4df7-8a09-765794883524>2010-05-10 00:57:06 +0000
commit61f0f4375b35dd9b3ab6f1e1803385b57a22c7fb (patch)
tree80da506bd7e4add426883c092d1c06d202ab25e9 /MdePkg/Library/BaseUefiDecompressLib
parent0f127da65a69bb38b174bd595c205d060cff1bf7 (diff)
downloadedk2-61f0f4375b35dd9b3ab6f1e1803385b57a22c7fb.tar.gz
edk2-61f0f4375b35dd9b3ab6f1e1803385b57a22c7fb.tar.bz2
edk2-61f0f4375b35dd9b3ab6f1e1803385b57a22c7fb.zip
Use the ASSERT() for parameter checking as the 4th paramter of internal worker function of MakeTable() must be <= 16.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10472 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Library/BaseUefiDecompressLib')
-rw-r--r--MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.c8
-rw-r--r--MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLibInternals.h3
2 files changed, 9 insertions, 2 deletions
diff --git a/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.c b/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.c
index 30f85bce71..f6b1fe005d 100644
--- a/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.c
+++ b/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.c
@@ -1,7 +1,7 @@
/** @file
UEFI Decompress Library implementation refer to UEFI specification.
- Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -117,6 +117,7 @@ GetBits (
Creates Huffman Code mapping table for Extra Set, Char&Len Set
and Position Set according to code length array.
+ If TableBits > 16, then ASSERT ().
@param Sd The global scratch data
@param NumOfChar Number of symbols in the symbol set
@@ -152,6 +153,11 @@ MakeTable (
UINT16 WordOfStart;
UINT16 WordOfCount;
+ //
+ // The maximum mapping table width supported by this internal
+ // working function is 16.
+ //
+ ASSERT (TableBits <= 16);
for (Index = 0; Index <= 16; Index++) {
Count[Index] = 0;
diff --git a/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLibInternals.h b/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLibInternals.h
index a0e44dc076..856c1f7b01 100644
--- a/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLibInternals.h
+++ b/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLibInternals.h
@@ -1,7 +1,7 @@
/** @file
Internal data structure defintions for Base UEFI Decompress Libary.
- Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
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
@@ -107,6 +107,7 @@ GetBits (
Creates Huffman Code mapping table for Extra Set, Char&Len Set
and Position Set according to code length array.
+ If TableBits > 16, then ASSERT ().
@param Sd The global scratch data
@param NumOfChar Number of symbols in the symbol set