summaryrefslogtreecommitdiff
path: root/debian/patches/solve_PATH_MAX_issue.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/solve_PATH_MAX_issue.patch')
-rw-r--r--debian/patches/solve_PATH_MAX_issue.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/debian/patches/solve_PATH_MAX_issue.patch b/debian/patches/solve_PATH_MAX_issue.patch
new file mode 100644
index 0000000..4f860e9
--- /dev/null
+++ b/debian/patches/solve_PATH_MAX_issue.patch
@@ -0,0 +1,50 @@
+From: =?utf-8?b?SMOpY3RvciBPcsOzbiBNYXJ0w61uZXo=?= <zumbi@debian.org>
+Date: Wed, 20 Feb 2019 13:25:36 +0100
+Subject: Patch out a PATH_MAX usage, for Hurd's benefit
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+Author: Svante Signell <svante.signell@gmail.com>
+Bug-Debian: http://bugs.debian.org/709508
+Forwarded: http://sourceware.org/ml/gdb-patches/2013-05/msg00878.html
+Reviewed-By: Héctor Orón Martínez <zumbi@debian.org>
+Last-Update: 2013-06-08
+---
+ gdb/nto-tdep.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/gdb/nto-tdep.c b/gdb/nto-tdep.c
+index 82a4fcb..12923fc 100644
+--- a/gdb/nto-tdep.c
++++ b/gdb/nto-tdep.c
+@@ -155,10 +155,12 @@ nto_find_and_open_solib (const char *solib, unsigned o_flags,
+ void
+ nto_init_solib_absolute_prefix (void)
+ {
+- char buf[PATH_MAX * 2], arch_path[PATH_MAX];
++ char *buf, *arch_path;
+ char *nto_root;
+ const char *endian;
+ const char *arch;
++ int arch_len, len;
++#define FMT "set solib-absolute-prefix %s"
+
+ nto_root = nto_target ();
+ if (strcmp (gdbarch_bfd_arch_info (target_gdbarch ())->arch_name, "i386") == 0)
+@@ -181,9 +183,13 @@ nto_init_solib_absolute_prefix (void)
+ == BFD_ENDIAN_BIG ? "be" : "le";
+ }
+
+- xsnprintf (arch_path, sizeof (arch_path), "%s/%s%s", nto_root, arch, endian);
++ arch_len = strlen (nto_root) + 1 + strlen (arch) + strlen (endian) + 1;
++ arch_path = alloca (arch_len);
++ xsnprintf (arch_path, arch_len, "%s/%s%s", nto_root, arch, endian);
+
+- xsnprintf (buf, sizeof (buf), "set solib-absolute-prefix %s", arch_path);
++ len = strlen (FMT) - 2 + strlen (arch_path) + 1;
++ buf = alloca (len);
++ xsnprintf (buf, len, FMT, arch_path);
+ execute_command (buf, 0);
+ }
+