pointer verification (not NULL) and buffer overrun fixes.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11459 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jcarsey
2011-03-30 19:33:03 +00:00
parent 6b825919f1
commit 33c031ee20
21 changed files with 338 additions and 185 deletions

View File

@ -256,10 +256,10 @@ Returns:
// do not set currentline to Line
//
if (Count <= 0) {
AbsCount = -Count;
AbsCount = (UINTN)ABS(Count);
Line = _HLineRetreat (AbsCount);
} else {
Line = _HLineAdvance (Count);
Line = _HLineAdvance ((UINTN)Count);
}
return Line;
@ -297,10 +297,10 @@ Returns:
// >0: advance
//
if (Count <= 0) {
AbsCount = -Count;
AbsCount = (UINTN)ABS(Count);
Line = _HLineRetreat (AbsCount);
} else {
Line = _HLineAdvance (Count);
Line = _HLineAdvance ((UINTN)Count);
}
if (Line == NULL) {
@ -399,7 +399,10 @@ Returns:
Lenp = StrLen (Pat);
Lens = StrLen (Str);
Failure = AllocateZeroPool (Lenp * sizeof (INTN));
Failure = AllocateZeroPool ((UINTN)(Lenp * sizeof (INTN)));
if (Failure == NULL) {
return 0;
}
Failure[0] = -1;
for (j = 1; j < Lenp; j++) {
i = Failure[j - 1];