summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg/Universal
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2017-09-09 23:41:01 +0200
committerLaszlo Ersek <lersek@redhat.com>2017-09-12 12:12:26 +0200
commiteb928b17c5c4a3918ba1d16aed5fbd797e69e75e (patch)
treed764242f0683638d360816547c78950e047637b5 /MdeModulePkg/Universal
parent131fd40ffc34bd0b3b4eca6a66378f48d1b25279 (diff)
downloadedk2-eb928b17c5c4a3918ba1d16aed5fbd797e69e75e.tar.gz
edk2-eb928b17c5c4a3918ba1d16aed5fbd797e69e75e.tar.bz2
edk2-eb928b17c5c4a3918ba1d16aed5fbd797e69e75e.zip
MdeModulePkg/UdfDxe: replace zero-init of local variables with ZeroMem()
In edk2, initialization of local variables is forbidden, both for stylistic reasons and because such initialization may generate calls to compiler intrinsics. For the following initialization in UdfRead(): CHAR16 FileName[UDF_FILENAME_LENGTH] = { 0 }; clang-3.8 generates a memset() call, when building UdfDxe for IA32, which then fails to link. Replace the initialization with ZeroMem(). Do the same to "FilePath" in UdfOpen(). Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Eric Dong <eric.dong@intel.com> Cc: Paulo Alcantara <pcacjr@zytor.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Paulo Alcantara <pcacjr@zytor.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Diffstat (limited to 'MdeModulePkg/Universal')
-rw-r--r--MdeModulePkg/Universal/Disk/UdfDxe/File.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/MdeModulePkg/Universal/Disk/UdfDxe/File.c b/MdeModulePkg/Universal/Disk/UdfDxe/File.c
index 8b9339567f..e7159ff861 100644
--- a/MdeModulePkg/Universal/Disk/UdfDxe/File.c
+++ b/MdeModulePkg/Universal/Disk/UdfDxe/File.c
@@ -176,11 +176,12 @@ UdfOpen (
EFI_STATUS Status;
PRIVATE_UDF_FILE_DATA *PrivFileData;
PRIVATE_UDF_SIMPLE_FS_DATA *PrivFsData;
- CHAR16 FilePath[UDF_PATH_LENGTH] = { 0 };
+ CHAR16 FilePath[UDF_PATH_LENGTH];
UDF_FILE_INFO File;
PRIVATE_UDF_FILE_DATA *NewPrivFileData;
CHAR16 *TempFileName;
+ ZeroMem (FilePath, sizeof FilePath);
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
if (This == NULL || NewHandle == NULL || FileName == NULL) {
@@ -324,10 +325,11 @@ UdfRead (
UDF_FILE_INFO FoundFile;
UDF_FILE_IDENTIFIER_DESCRIPTOR *NewFileIdentifierDesc;
VOID *NewFileEntryData;
- CHAR16 FileName[UDF_FILENAME_LENGTH] = { 0 };
+ CHAR16 FileName[UDF_FILENAME_LENGTH];
UINT64 FileSize;
UINT64 BufferSizeUint64;
+ ZeroMem (FileName, sizeof FileName);
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
if (This == NULL || BufferSize == NULL || (*BufferSize != 0 &&