On 2016-10-24 00:58:46, Ard Biesheuvel wrote:
> On 21 October 2016 at 22:27, Laszlo Ersek <ler...@redhat.com> wrote:
> > AsciiStrCat() is deprecated / disabled under the
> > DISABLE_NEW_DEPRECATED_INTERFACES feature test macro.
> >
> > The "Str" variable serves no particular purpose in the MRegList() and
> > ThumbMRegList() functions; replace it with the pointed-to "mMregListStr" /
> > "mThumbMregListStr" global variable (as appropriate), so that the new
> > AsciiStrCatS() calls are as clear as possible.
> >
> > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org>
> > Cc: Leif Lindholm <leif.lindh...@linaro.org>
> > Cc: Michael Zimmermann <sigmaepsilo...@gmail.com>
> > Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=164
> > Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=165
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> 
> Reviewed-by: Ard Biesheuvel <ard.biesheu...@linaro.org>
> 
> > ---
> >
> > Notes:
> >     - build-tested only
> >
> >     - Michael (CC'd) had posted a patch earlier for this:
> >       <https://lists.01.org/pipermail/edk2-devel/2016-August/000489.html>,
> >       but I only noticed that now that he pointed it out, in
> >       <https://lists.01.org/pipermail/edk2-devel/2016-October/003121.html>.
> >       I'll leave it to the ArmPkg maintainers to choose one; I don't feel
> >       strongly either way.
> >
> 
> Apologies to Michael for ignoring his contribution, but I'd be happy
> for Laszlo to merge this as part of the series.
> 
> >  ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c   | 22 
> > +++++++++-----------
> >  ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c | 20 
> > ++++++++----------
> >  2 files changed, 19 insertions(+), 23 deletions(-)
> >
> > diff --git a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c 
> > b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c
> > index 29a8d4438622..8551edc379c1 100644
> > --- a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c
> > +++ b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c
> > @@ -88,12 +88,10 @@ MRegList (
> >    )
> >  {
> >    UINTN     Index, Start, End;
> > -  CHAR8     *Str;
> >    BOOLEAN   First;
> >
> > -  Str = mMregListStr;
> > -  *Str = '\0';
> > -  AsciiStrCat  (Str, "{");
> > +  mMregListStr[0] = '\0';
> > +  AsciiStrCatS  (mMregListStr, sizeof mMregListStr, "{");

Maybe drop the extra space after the function name throughout this
patch. (There are 2 instead of just one.)

-Jordan

> >    for (Index = 0, First = TRUE; Index <= 15; Index++) {
> >      if ((OpCode & (1 << Index)) != 0) {
> >        Start = End = Index;
> > @@ -102,25 +100,25 @@ MRegList (
> >        }
> >
> >        if (!First) {
> > -        AsciiStrCat  (Str, ",");
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, ",");
> >        } else {
> >          First = FALSE;
> >        }
> >
> >        if (Start == End) {
> > -        AsciiStrCat  (Str, gReg[Start]);
> > -        AsciiStrCat  (Str, ", ");
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, gReg[Start]);
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, ", ");
> >        } else {
> > -        AsciiStrCat  (Str, gReg[Start]);
> > -        AsciiStrCat  (Str, "-");
> > -        AsciiStrCat  (Str, gReg[End]);
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, gReg[Start]);
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, "-");
> > +        AsciiStrCatS  (mMregListStr, sizeof mMregListStr, gReg[End]);
> >        }
> >      }
> >    }
> >    if (First) {
> > -    AsciiStrCat  (Str, "ERROR");
> > +    AsciiStrCatS  (mMregListStr, sizeof mMregListStr, "ERROR");
> >    }
> > -  AsciiStrCat  (Str, "}");
> > +  AsciiStrCatS  (mMregListStr, sizeof mMregListStr, "}");
> >
> >    // BugBug: Make caller pass in buffer it is cleaner
> >    return mMregListStr;
> > diff --git a/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c 
> > b/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c
> > index 5bad3afcfbf6..86d5083cb189 100644
> > --- a/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c
> > +++ b/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c
> > @@ -397,12 +397,10 @@ ThumbMRegList (
> >    )
> >  {
> >    UINTN     Index, Start, End;
> > -  CHAR8     *Str;
> >    BOOLEAN   First;
> >
> > -  Str = mThumbMregListStr;
> > -  *Str = '\0';
> > -  AsciiStrCat  (Str, "{");
> > +  mThumbMregListStr[0] = '\0';
> > +  AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, "{");
> >
> >    for (Index = 0, First = TRUE; Index <= 15; Index++) {
> >      if ((RegBitMask & (1 << Index)) != 0) {
> > @@ -412,24 +410,24 @@ ThumbMRegList (
> >        }
> >
> >        if (!First) {
> > -        AsciiStrCat  (Str, ",");
> > +        AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, ",");
> >        } else {
> >          First = FALSE;
> >        }
> >
> >        if (Start == End) {
> > -        AsciiStrCat  (Str, gReg[Start]);
> > +        AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, 
> > gReg[Start]);
> >        } else {
> > -        AsciiStrCat  (Str, gReg[Start]);
> > -        AsciiStrCat  (Str, "-");
> > -        AsciiStrCat  (Str, gReg[End]);
> > +        AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, 
> > gReg[Start]);
> > +        AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, "-");
> > +        AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, 
> > gReg[End]);
> >        }
> >      }
> >    }
> >    if (First) {
> > -    AsciiStrCat  (Str, "ERROR");
> > +    AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, "ERROR");
> >    }
> > -  AsciiStrCat  (Str, "}");
> > +  AsciiStrCatS  (mThumbMregListStr, sizeof mThumbMregListStr, "}");
> >
> >    // BugBug: Make caller pass in buffer it is cleaner
> >    return mThumbMregListStr;
> > --
> > 2.9.2
> >
> >
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to