BaseTools/GenSec: Fix potential memory leak
Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
@ -902,6 +902,7 @@ Returns:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (InputLength == 0) {
|
if (InputLength == 0) {
|
||||||
|
free (FileBuffer);
|
||||||
Error (NULL, 0, 2000, "Invalid parameter", "the size of input file %s can't be zero", InputFileName);
|
Error (NULL, 0, 2000, "Invalid parameter", "the size of input file %s can't be zero", InputFileName);
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
@ -1215,7 +1216,7 @@ Returns:
|
|||||||
InputFileAlign = (UINT32 *) malloc (MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32));
|
InputFileAlign = (UINT32 *) malloc (MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32));
|
||||||
if (InputFileAlign == NULL) {
|
if (InputFileAlign == NULL) {
|
||||||
Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!");
|
Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!");
|
||||||
return 1;
|
goto Finish;
|
||||||
}
|
}
|
||||||
memset (InputFileAlign, 1, MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32));
|
memset (InputFileAlign, 1, MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32));
|
||||||
} else if (InputFileAlignNum % MAXIMUM_INPUT_FILE_NUM == 0) {
|
} else if (InputFileAlignNum % MAXIMUM_INPUT_FILE_NUM == 0) {
|
||||||
@ -1226,7 +1227,7 @@ Returns:
|
|||||||
|
|
||||||
if (InputFileAlign == NULL) {
|
if (InputFileAlign == NULL) {
|
||||||
Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!");
|
Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!");
|
||||||
return 1;
|
goto Finish;
|
||||||
}
|
}
|
||||||
memset (&(InputFileAlign[InputFileNum]), 1, (MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32)));
|
memset (&(InputFileAlign[InputFileNum]), 1, (MAXIMUM_INPUT_FILE_NUM * sizeof (UINT32)));
|
||||||
}
|
}
|
||||||
@ -1249,7 +1250,7 @@ Returns:
|
|||||||
InputFileName = (CHAR8 **) malloc (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *));
|
InputFileName = (CHAR8 **) malloc (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *));
|
||||||
if (InputFileName == NULL) {
|
if (InputFileName == NULL) {
|
||||||
Error (NULL, 0, 4001, "Resource", "memory cannot be allcoated");
|
Error (NULL, 0, 4001, "Resource", "memory cannot be allcoated");
|
||||||
return 1;
|
goto Finish;
|
||||||
}
|
}
|
||||||
memset (InputFileName, 0, (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *)));
|
memset (InputFileName, 0, (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *)));
|
||||||
} else if (InputFileNum % MAXIMUM_INPUT_FILE_NUM == 0) {
|
} else if (InputFileNum % MAXIMUM_INPUT_FILE_NUM == 0) {
|
||||||
@ -1263,7 +1264,7 @@ Returns:
|
|||||||
|
|
||||||
if (InputFileName == NULL) {
|
if (InputFileName == NULL) {
|
||||||
Error (NULL, 0, 4001, "Resource", "memory cannot be allcoated");
|
Error (NULL, 0, 4001, "Resource", "memory cannot be allcoated");
|
||||||
return 1;
|
goto Finish;
|
||||||
}
|
}
|
||||||
memset (&(InputFileName[InputFileNum]), 0, (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *)));
|
memset (&(InputFileName[InputFileNum]), 0, (MAXIMUM_INPUT_FILE_NUM * sizeof (CHAR8 *)));
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user