diff options
Diffstat (limited to 'ShellPkg/Application/Shell/ShellEnvVar.c')
-rw-r--r-- | ShellPkg/Application/Shell/ShellEnvVar.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/ShellPkg/Application/Shell/ShellEnvVar.c b/ShellPkg/Application/Shell/ShellEnvVar.c index 174a783830..810f843149 100644 --- a/ShellPkg/Application/Shell/ShellEnvVar.c +++ b/ShellPkg/Application/Shell/ShellEnvVar.c @@ -148,9 +148,13 @@ GetEnvironmentVariableList( return (EFI_INVALID_PARAMETER);
}
- Status = gRT->QueryVariableInfo(EFI_VARIABLE_NON_VOLATILE|EFI_VARIABLE_BOOTSERVICE_ACCESS, &MaxStorSize, &RemStorSize, &MaxVarSize);
- if (EFI_ERROR(Status)) {
- return (Status);
+ if (gRT->Hdr.Revision >= EFI_2_00_SYSTEM_TABLE_REVISION) {
+ Status = gRT->QueryVariableInfo(EFI_VARIABLE_NON_VOLATILE|EFI_VARIABLE_BOOTSERVICE_ACCESS, &MaxStorSize, &RemStorSize, &MaxVarSize);
+ if (EFI_ERROR(Status)) {
+ return (Status);
+ }
+ } else {
+ MaxVarSize = 16384;
}
NameSize = (UINTN)MaxVarSize;
|