mirror of https://github.com/acidanthera/audk.git
ArmPkg/SemihostFs: eliminate calls to deprecated string functions
Remove calls to deprecated string functions like AsciiStrCpy() and UnicodeStrToAsciiStr() Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Ryan Harkin <ryan.harkin@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
This commit is contained in:
parent
9fbbbd1222
commit
f6c4d99ae4
|
@ -207,11 +207,12 @@ FileOpen (
|
||||||
return EFI_WRITE_PROTECTED;
|
return EFI_WRITE_PROTECTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
AsciiFileName = AllocatePool (StrLen (FileName) + 1);
|
Length = StrLen (FileName) + 1;
|
||||||
|
AsciiFileName = AllocatePool (Length);
|
||||||
if (AsciiFileName == NULL) {
|
if (AsciiFileName == NULL) {
|
||||||
return EFI_OUT_OF_RESOURCES;
|
return EFI_OUT_OF_RESOURCES;
|
||||||
}
|
}
|
||||||
UnicodeStrToAsciiStr (FileName, AsciiFileName);
|
UnicodeStrToAsciiStrS (FileName, AsciiFileName, Length);
|
||||||
|
|
||||||
// Opening '/', '\', '.', or the NULL pathname is trying to open the root directory
|
// Opening '/', '\', '.', or the NULL pathname is trying to open the root directory
|
||||||
if ((AsciiStrCmp (AsciiFileName, "\\") == 0) ||
|
if ((AsciiStrCmp (AsciiFileName, "\\") == 0) ||
|
||||||
|
@ -463,7 +464,7 @@ FileDelete (
|
||||||
NameSize = AsciiStrLen (Fcb->FileName);
|
NameSize = AsciiStrLen (Fcb->FileName);
|
||||||
FileName = AllocatePool (NameSize + 1);
|
FileName = AllocatePool (NameSize + 1);
|
||||||
|
|
||||||
AsciiStrCpy (FileName, Fcb->FileName);
|
AsciiStrCpyS (FileName, NameSize + 1, Fcb->FileName);
|
||||||
|
|
||||||
// Close the file if it's open. Disregard return status,
|
// Close the file if it's open. Disregard return status,
|
||||||
// since it might give an error if the file isn't open.
|
// since it might give an error if the file isn't open.
|
||||||
|
@ -828,8 +829,10 @@ GetFilesystemInfo (
|
||||||
EFI_FILE_SYSTEM_INFO *Info;
|
EFI_FILE_SYSTEM_INFO *Info;
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
UINTN ResultSize;
|
UINTN ResultSize;
|
||||||
|
UINTN StringSize;
|
||||||
|
|
||||||
ResultSize = SIZE_OF_EFI_FILE_SYSTEM_INFO + StrSize (mSemihostFsLabel);
|
StringSize = StrSize (mSemihostFsLabel);
|
||||||
|
ResultSize = SIZE_OF_EFI_FILE_SYSTEM_INFO + StringSize;
|
||||||
|
|
||||||
if (*BufferSize >= ResultSize) {
|
if (*BufferSize >= ResultSize) {
|
||||||
ZeroMem (Buffer, ResultSize);
|
ZeroMem (Buffer, ResultSize);
|
||||||
|
@ -843,7 +846,7 @@ GetFilesystemInfo (
|
||||||
Info->FreeSpace = 0;
|
Info->FreeSpace = 0;
|
||||||
Info->BlockSize = 0;
|
Info->BlockSize = 0;
|
||||||
|
|
||||||
StrCpy (Info->VolumeLabel, mSemihostFsLabel);
|
CopyMem (Info->VolumeLabel, mSemihostFsLabel, StringSize);
|
||||||
} else {
|
} else {
|
||||||
Status = EFI_BUFFER_TOO_SMALL;
|
Status = EFI_BUFFER_TOO_SMALL;
|
||||||
}
|
}
|
||||||
|
@ -903,7 +906,7 @@ FileGetInfo (
|
||||||
ResultSize = StrSize (mSemihostFsLabel);
|
ResultSize = StrSize (mSemihostFsLabel);
|
||||||
|
|
||||||
if (*BufferSize >= ResultSize) {
|
if (*BufferSize >= ResultSize) {
|
||||||
StrCpy (Buffer, mSemihostFsLabel);
|
CopyMem (Buffer, mSemihostFsLabel, ResultSize);
|
||||||
Status = EFI_SUCCESS;
|
Status = EFI_SUCCESS;
|
||||||
} else {
|
} else {
|
||||||
Status = EFI_BUFFER_TOO_SMALL;
|
Status = EFI_BUFFER_TOO_SMALL;
|
||||||
|
@ -963,11 +966,12 @@ SetFileInfo (
|
||||||
return EFI_ACCESS_DENIED;
|
return EFI_ACCESS_DENIED;
|
||||||
}
|
}
|
||||||
|
|
||||||
AsciiFileName = AllocatePool (StrLen (Info->FileName) + 1);
|
Length = StrLen (Info->FileName) + 1;
|
||||||
|
AsciiFileName = AllocatePool (Length);
|
||||||
if (AsciiFileName == NULL) {
|
if (AsciiFileName == NULL) {
|
||||||
return EFI_OUT_OF_RESOURCES;
|
return EFI_OUT_OF_RESOURCES;
|
||||||
}
|
}
|
||||||
UnicodeStrToAsciiStr (Info->FileName, AsciiFileName);
|
UnicodeStrToAsciiStrS (Info->FileName, AsciiFileName, Length);
|
||||||
|
|
||||||
FileSizeIsDifferent = (Info->FileSize != Fcb->Info.FileSize);
|
FileSizeIsDifferent = (Info->FileSize != Fcb->Info.FileSize);
|
||||||
FileNameIsDifferent = (AsciiStrCmp (AsciiFileName, Fcb->FileName) != 0);
|
FileNameIsDifferent = (AsciiStrCmp (AsciiFileName, Fcb->FileName) != 0);
|
||||||
|
|
Loading…
Reference in New Issue