[llvm-commits] [llvm-gcc-4.2] r77036 - /llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
Bill Wendling
isanbard at gmail.com
Sun Jul 26 03:31:22 PDT 2009
On Jul 24, 2009, at 6:37 PM, Daniel Dunbar wrote:
> Author: ddunbar
> Date: Fri Jul 24 20:37:35 2009
> New Revision: 77036
>
> URL: http://llvm.org/viewvc/llvm-project?rev=77036&view=rev
> Log:
> Protect from LLVM API changes; this also fixes a potential use-after-
> free!
>
What UAF?
-bw
> Modified:
> llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
>
> Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=77036&r1=77035&r2=77036&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
> +++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Fri Jul 24 20:37:35 2009
> @@ -1396,13 +1396,13 @@
> // something that would be accurate and useful to a user, it
> currently
> // affects some optimizations that, e.g., count uses.
> if (TheDebugInfo && !optimize) {
> - const char *Name = GV->getName().c_str();
> + std::string Name = GV->getNameStr();
> const char LPrefix[] = "\01L_OBJC_";
> const char lPrefix[] = "\01l_OBJC_";
>
> if (flag_objc_abi == -1 || flag_objc_abi == 0 ||
> - (strncmp(Name, LPrefix, sizeof(LPrefix) - 1) != 0 &&
> - strncmp(Name, lPrefix, sizeof(lPrefix) - 1) != 0))
> + (strncmp(Name.c_str(), LPrefix, sizeof(LPrefix) - 1) != 0 &&
> + strncmp(Name.c_str(), lPrefix, sizeof(lPrefix) - 1) != 0))
> TheDebugInfo->EmitGlobalVariable(GV, decl);
> }
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list