This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix cli_interp::cli_uiout resource leak found by Coverity


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ba543ca5afafed5bda2db52e8f424f20ff605173

commit ba543ca5afafed5bda2db52e8f424f20ff605173
Author: Gary Benson <gbenson@redhat.com>
Date:   Fri Oct 19 11:51:41 2018 +0100

    Fix cli_interp::cli_uiout resource leak found by Coverity
    
    This commit fixes a resource leak found by Coverity, where cli_interp's
    constructor creates a new cli_ui_out, but there was no corresponding
    destructor to free it.
    
    gdb/ChangeLog:
    
    	* cli/cli-interp.c (cli_interp::~cli_interp): New function.

Diff:
---
 gdb/ChangeLog        | 4 ++++
 gdb/cli/cli-interp.c | 6 ++++++
 2 files changed, 10 insertions(+)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e177cf2..d32cfd0 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2018-10-19  Gary Benson <gbenson@redhat.com>
+
+	* cli/cli-interp.c (cli_interp::~cli_interp): New function.
+
 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
 
 	PR cli/23785
diff --git a/gdb/cli/cli-interp.c b/gdb/cli/cli-interp.c
index 2aa41d6..75d8093 100644
--- a/gdb/cli/cli-interp.c
+++ b/gdb/cli/cli-interp.c
@@ -44,6 +44,7 @@ class cli_interp final : public cli_interp_base
 {
  public:
   explicit cli_interp (const char *name);
+  ~cli_interp ();
 
   void init (bool top_level) override;
   void resume () override;
@@ -62,6 +63,11 @@ cli_interp::cli_interp (const char *name)
   this->cli_uiout = cli_out_new (gdb_stdout);
 }
 
+cli_interp::~cli_interp ()
+{
+  delete cli_uiout;
+}
+
 /* Suppress notification struct.  */
 struct cli_suppress_notification cli_suppress_notification =
   {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]