MaskRay marked 2 inline comments as done. MaskRay added inline comments.
================ Comment at: lldb/tools/driver/Driver.cpp:856 if (const char *reproducer_path = SBReproducer::GetPath()) { - // Leaking the string on purpose. - std::string *finalize_cmd = new std::string(argv0); + static std::string *finalize_cmd = new std::string(argv0); finalize_cmd->append(" --reproducer-finalize '"); ---------------- dblaikie wrote: > MaskRay wrote: > > dblaikie wrote: > > > Can this code execute more than once? If it does I guess it'll really > > > leak? > > > > > > (if it's not meant to be called more than once, maybe something like: > > > ``` > > > static std::string *x = nullptr; > > > assert(!x); > > > x = new std::string(argv0); > > > ... > > > ``` > > The function is only executed once. > If that's not enforced in any way (at least I can't see any) & the rest of > the code looks like it would be OK being called more than once (I think?) - > might be worth some checking? The function is oneshot and from the called functions it should be clear the function cannot be executed more than once (otherwise, duplicate error messages). I changed the function to `static` so that it is clear this is not used a library function. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D100806/new/ https://reviews.llvm.org/D100806 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits