[lldb] Avoid resource leak
authorKonrad Kleine <kkleine@redhat.com>
Tue, 8 Oct 2019 15:56:02 +0000 (15:56 +0000)
committerKonrad Kleine <kkleine@redhat.com>
Tue, 8 Oct 2019 15:56:02 +0000 (15:56 +0000)
commit6d7fb29914e3dd9e7f7d7524c5f98367a1aa613a
treee3d992bbeffd56a9b0ccc743e91063fc5a2d7a10
parentd80c2520d9f8cb660bbd10b8ff7b78d7f03ad339
[lldb] Avoid resource leak

Summary:
Before the pointer variable `args_dict` was assigned the result of an
allocation with `new` and then `args_dict` is passed to
`GetValueForKeyAsDictionary` which immediatly and unconditionally
assigns `args_dict` to `nullptr`:

```
    bool GetValueForKeyAsDictionary(llvm::StringRef key,
                                    Dictionary *&result) const {
      result = nullptr;
```

This caused a memory leak which was found in my coverity scan instance
under CID 224753: https://scan.coverity.com/projects/kwk-llvm-project.

Reviewers: jankratochvil, teemperor

Reviewed By: teemperor

Subscribers: teemperor, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D68638

llvm-svn: 374071
lldb/source/Breakpoint/BreakpointResolverScripted.cpp