c42f0297dc
Rebase to pre-FSF GDB 8.1 (8.1.90.20180109).
54 lines
1.6 KiB
Diff
54 lines
1.6 KiB
Diff
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
|
|
From: Fedora GDB patches <invalid@email.com>
|
|
Date: Fri, 27 Oct 2017 21:07:50 +0200
|
|
Subject: gdb-6.6-buildid-locate-rpm-librpm-workaround.patch
|
|
|
|
FileName: gdb-6.6-buildid-locate-rpm-librpm-workaround.patch
|
|
|
|
;; Workaround librpm BZ 643031 due to its unexpected exit() calls (BZ 642879).
|
|
;;=push+jan
|
|
---
|
|
gdb/build-id.c | 13 +++++++++++++
|
|
gdb/proc-service.list | 3 +++
|
|
2 files changed, 16 insertions(+)
|
|
|
|
diff --git a/gdb/build-id.c b/gdb/build-id.c
|
|
index d60cf622dc..409a5b8c54 100644
|
|
--- a/gdb/build-id.c
|
|
+++ b/gdb/build-id.c
|
|
@@ -678,6 +678,19 @@ build_id_to_filename (const struct bfd_build_id *build_id, char **link_return)
|
|
#include <dlfcn.h>
|
|
#endif
|
|
|
|
+/* Workarodun https://bugzilla.redhat.com/show_bug.cgi?id=643031
|
|
+ librpm must not exit() an application on SIGINT
|
|
+
|
|
+ Enable or disable a signal handler. SIGNUM: signal to enable (or disable
|
|
+ if negative). HANDLER: sa_sigaction handler (or NULL to use
|
|
+ rpmsqHandler()). Returns: no. of refs, -1 on error. */
|
|
+extern int rpmsqEnable (int signum, /* rpmsqAction_t handler */ void *handler);
|
|
+int
|
|
+rpmsqEnable (int signum, /* rpmsqAction_t handler */ void *handler)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
/* This MISSING_RPM_HASH tracker is used to collect all the missing rpm files
|
|
and avoid their duplicities during a single inferior run. */
|
|
|
|
diff --git a/gdb/proc-service.list b/gdb/proc-service.list
|
|
index 53f7ed8b1e..323f5e83c2 100644
|
|
--- a/gdb/proc-service.list
|
|
+++ b/gdb/proc-service.list
|
|
@@ -37,4 +37,7 @@
|
|
ps_pstop;
|
|
ps_ptread;
|
|
ps_ptwrite;
|
|
+
|
|
+ /* gdb-6.6-buildid-locate-rpm.patch */
|
|
+ rpmsqEnable;
|
|
};
|
|
--
|
|
2.14.3
|
|
|