Patchwork [4/8] Remove gdb workaround from readline/xfree.c

login
register
mail settings
Submitter Tom Tromey
Date Aug. 6, 2019, 8:43 p.m.
Message ID <20190806204334.13441-5-tom@tromey.com>
Download mbox | patch
Permalink /patch/33981/
State New
Headers show

Comments

Tom Tromey - Aug. 6, 2019, 8:43 p.m.
There is a gdb-local patch to deal with interrupts during completion.
The original thread adding this patch is here:

https://sourceware.org/ml/gdb-patches/2011-06/msg00147.html

I believe readline now implements the approach suggested by
Chet Ramey:

https://sourceware.org/ml/gdb-patches/2011-06/msg00493.html

So, I believe this patch can be removed.

2018-10-07  Tom Tromey  <tom@tromey.com>

	* Makefile.in (xfree.o): Don't depend on readline.h.
	* xfree.c (xfree): Remove gdb workaround.
	* xmalloc.h (xfree): Remove #define.
---
 readline/ChangeLog.gdb | 6 ++++++
 readline/Makefile.in   | 2 +-
 readline/xfree.c       | 7 -------
 readline/xmalloc.h     | 3 ---
 4 files changed, 7 insertions(+), 11 deletions(-)

Patch

diff --git a/readline/Makefile.in b/readline/Makefile.in
index 0916d33e065..1adfc286b81 100644
--- a/readline/Makefile.in
+++ b/readline/Makefile.in
@@ -437,7 +437,7 @@  vi_mode.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
 vi_mode.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h
 vi_mode.o: history.h ansi_stdlib.h rlstdc.h
 xfree.o: ${BUILD_DIR}/config.h
-xfree.o: ansi_stdlib.h readline.h
+xfree.o: ansi_stdlib.h
 xmalloc.o: ${BUILD_DIR}/config.h
 xmalloc.o: ansi_stdlib.h
 
diff --git a/readline/xfree.c b/readline/xfree.c
index d3af7d9aef0..37a81e6c236 100644
--- a/readline/xfree.c
+++ b/readline/xfree.c
@@ -31,10 +31,7 @@ 
 #  include "ansi_stdlib.h"
 #endif /* HAVE_STDLIB_H */
 
-#include <stdio.h>
-
 #include "xmalloc.h"
-#include "readline.h"
 
 /* **************************************************************** */
 /*								    */
@@ -48,10 +45,6 @@  void
 xfree (string)
      PTR_T string;
 {
-  /* Leak a bit.  */
-  if (RL_ISSTATE(RL_STATE_SIGHANDLER))
-    return;
-
   if (string)
     free (string);
 }
diff --git a/readline/xmalloc.h b/readline/xmalloc.h
index 0fb6a1960e1..f40d7a596a2 100644
--- a/readline/xmalloc.h
+++ b/readline/xmalloc.h
@@ -38,9 +38,6 @@ 
 
 #endif /* !PTR_T */
 
-/* xmalloc and xrealloc should be also protected from RL_STATE_SIGHANDLER.  */
-#define xfree xfree_readline
-
 extern PTR_T xmalloc PARAMS((size_t));
 extern PTR_T xrealloc PARAMS((void *, size_t));
 extern void xfree PARAMS((void *));