emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 361e889 1/3: Fix search_regs memory leak when threa


From: Paul Eggert
Subject: [Emacs-diffs] master 361e889 1/3: Fix search_regs memory leak when thread destroyed
Date: Thu, 28 Mar 2019 00:24:31 -0400 (EDT)

branch: master
commit 361e88986f3580a7433a23eec1cf01408e5e3627
Author: Paul Eggert <address@hidden>
Commit: Paul Eggert <address@hidden>

    Fix search_regs memory leak when thread destroyed
    
    * src/thread.c (free_search_regs): New function.
    (finalize_one_thread): Use it.
---
 src/thread.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/thread.c b/src/thread.c
index 59e5b66..e51d614 100644
--- a/src/thread.c
+++ b/src/thread.c
@@ -768,9 +768,21 @@ run_thread (void *state)
   return NULL;
 }
 
+static void
+free_search_regs (struct re_registers *regs)
+{
+  if (regs->num_regs != 0)
+    {
+      xfree (regs->start);
+      xfree (regs->end);
+    }
+}
+
 void
 finalize_one_thread (struct thread_state *state)
 {
+  free_search_regs (&state->m_search_regs);
+  free_search_regs (&state->m_saved_search_regs);
   sys_cond_destroy (&state->thread_condvar);
 }
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]