mirror of https://github.com/acidanthera/audk.git
MdePkg/BaseLib: Base64Decode(): don't declare variables in nested blocks
The EDK II C Coding Standards Specification (v2.20) strongly discourages
variable declarations in nested block scope:
5 Source Files
5.4 Code File Structure
5.4.1 Scoping Rules
5.4.1.1 Scope
> Block (local) Scope
>
> [...]
>
> Data declarations may follow the opening brace of a compound statement,
> regardless of nesting depth, and before any code generating statements
> have been entered. Other than at the outermost block of a function body,
> this type of declaration is strongly discouraged.
Hoist such variable declarations in Base64Decode() to the outermost
function scope.
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Cc: Zhichao Gao <zhichao.gao@intel.com>
Fixes: 35e242b698
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1980
Reported-by: Zhichao Gao <zhichao.gao@intel.com>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Rebecca Cran <rebecca@bsdio.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daude <philmd@redhat.com>
This commit is contained in:
parent
35e242b698
commit
cce01f538f
|
@ -1978,6 +1978,9 @@ Base64Decode (
|
|||
UINT32 Accumulator;
|
||||
UINTN OriginalDestinationSize;
|
||||
UINTN SourceIndex;
|
||||
CHAR8 SourceChar;
|
||||
UINT32 Base64Value;
|
||||
UINT8 DestinationOctet;
|
||||
|
||||
if (DestinationSize == NULL) {
|
||||
return RETURN_INVALID_PARAMETER;
|
||||
|
@ -2054,10 +2057,6 @@ Base64Decode (
|
|||
// Decoding loop.
|
||||
//
|
||||
for (SourceIndex = 0; SourceIndex < SourceSize; SourceIndex++) {
|
||||
CHAR8 SourceChar;
|
||||
UINT32 Base64Value;
|
||||
UINT8 DestinationOctet;
|
||||
|
||||
SourceChar = Source[SourceIndex];
|
||||
|
||||
//
|
||||
|
|
Loading…
Reference in New Issue