Message ID | 2939286924caa67e2cc57bf5ed4ce4287b9d571c.1639411309.git.gitgitgadget@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Reftable coverity fixes | expand |
On Mon, Dec 13 2021, Han-Wen Nienhuys via GitGitGadget wrote: > From: Han-Wen Nienhuys <hanwen@google.com> > > Spotted by Coverity. > > Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> > --- > reftable/reader.c | 3 ++- > reftable/stack.c | 3 ++- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/reftable/reader.c b/reftable/reader.c > index 006709a645a..8d308d858f8 100644 > --- a/reftable/reader.c > +++ b/reftable/reader.c > @@ -796,6 +796,7 @@ int reftable_reader_print_file(const char *tablename) > reftable_table_from_reader(&tab, r); > err = reftable_table_print(&tab); > done: > - reftable_reader_free(r); > + if (r) > + reftable_reader_free(r); > return err; > } > diff --git a/reftable/stack.c b/reftable/stack.c > index 10dfd370e8e..eb03b6c74f6 100644 > --- a/reftable/stack.c > +++ b/reftable/stack.c > @@ -707,7 +707,8 @@ done: > strbuf_release(&temp_tab_file_name); > strbuf_release(&tab_file_name); > strbuf_release(&next_name); > - reftable_writer_free(wr); > + if (wr) > + reftable_writer_free(wr); > return err; > } I'd think this would be better: diff --git a/reftable/reader.c b/reftable/reader.c index 006709a645a..3eec915830d 100644 --- a/reftable/reader.c +++ b/reftable/reader.c @@ -641,7 +641,8 @@ int reftable_new_reader(struct reftable_reader **p, void reftable_reader_free(struct reftable_reader *r) { - reader_close(r); + if (r) + reader_close(r); reftable_free(r); } No?
diff --git a/reftable/reader.c b/reftable/reader.c index 006709a645a..8d308d858f8 100644 --- a/reftable/reader.c +++ b/reftable/reader.c @@ -796,6 +796,7 @@ int reftable_reader_print_file(const char *tablename) reftable_table_from_reader(&tab, r); err = reftable_table_print(&tab); done: - reftable_reader_free(r); + if (r) + reftable_reader_free(r); return err; } diff --git a/reftable/stack.c b/reftable/stack.c index 10dfd370e8e..eb03b6c74f6 100644 --- a/reftable/stack.c +++ b/reftable/stack.c @@ -707,7 +707,8 @@ done: strbuf_release(&temp_tab_file_name); strbuf_release(&tab_file_name); strbuf_release(&next_name); - reftable_writer_free(wr); + if (wr) + reftable_writer_free(wr); return err; }