summaryrefslogtreecommitdiff
path: root/debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch')
-rw-r--r--debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch186
1 files changed, 0 insertions, 186 deletions
diff --git a/debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch b/debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch
deleted file mode 100644
index f68aba30..00000000
--- a/debian/patches/assert0001-libshouldbeinlibc-add-assert-3-variant-that-prints-b.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-From f0a3434e4bddb66af5fb04b23bf961e78fcf3152 Mon Sep 17 00:00:00 2001
-From: Justus Winter <4winter@informatik.uni-hamburg.de>
-Date: Fri, 20 Jun 2014 15:50:53 +0200
-Subject: [PATCH hurd 1/2] libshouldbeinlibc: add assert(3) variant that prints
- backtraces
-
-* libshouldbeinlibc/Makefile: Add new files
-* libshouldbeinlibc/assert-backtrace.{c,h}: New files.
----
- libshouldbeinlibc/Makefile | 2 +
- libshouldbeinlibc/assert-backtrace.c | 78 ++++++++++++++++++++++++++++++++++++
- libshouldbeinlibc/assert-backtrace.h | 60 +++++++++++++++++++++++++++
- 3 files changed, 140 insertions(+)
- create mode 100644 libshouldbeinlibc/assert-backtrace.c
- create mode 100644 libshouldbeinlibc/assert-backtrace.h
-
-diff --git a/libshouldbeinlibc/Makefile b/libshouldbeinlibc/Makefile
-index 633d60e..04c085b 100644
---- a/libshouldbeinlibc/Makefile
-+++ b/libshouldbeinlibc/Makefile
-@@ -29,10 +29,12 @@ SRCS = termsize.c timefmt.c exec-reauth.c maptime-funcs.c \
- ugids-auth.c ugids-xinl.c ugids-merge.c ugids-imply.c ugids-posix.c \
- ugids-verify-auth.c nullauth.c \
- refcount.c \
-+ assert-backtrace.c \
-
- installhdrs = idvec.h timefmt.h maptime.h \
- wire.h portinfo.h portxlate.h cacheq.h ugids.h nullauth.h \
- refcount.h \
-+ assert-backtrace.h \
-
- installhdrsubdir = .
-
-diff --git a/libshouldbeinlibc/assert-backtrace.c b/libshouldbeinlibc/assert-backtrace.c
-new file mode 100644
-index 0000000..3d7aad1
---- /dev/null
-+++ b/libshouldbeinlibc/assert-backtrace.c
-@@ -0,0 +1,78 @@
-+/* Assert with backtraces
-+
-+ Copyright (C) 2016 Free Software Foundation, Inc.
-+
-+ This file is part of the GNU Hurd.
-+
-+ The GNU Hurd is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU General Public License as
-+ published by the Free Software Foundation; either version 2, or (at
-+ your option) any later version.
-+
-+ The GNU Hurd is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with the GNU Hurd. If not, see <http://www.gnu.org/licenses/>. */
-+
-+#ifndef NDEBUG
-+
-+#include <error.h>
-+#include <errno.h>
-+#include <execinfo.h>
-+#include <stdio.h>
-+#include <string.h>
-+#include <unistd.h>
-+
-+#include "assert-backtrace.h"
-+
-+static void __attribute__ ((noreturn))
-+__assert_fail_base_backtrace (const char *fmt,
-+ const char *assertion,
-+ const char *file,
-+ unsigned int line,
-+ const char *function)
-+{
-+ const size_t size = 128;
-+ const size_t skip = 2;
-+ int nptrs;
-+ void *buffer[size];
-+
-+ nptrs = backtrace(buffer, size);
-+ if (nptrs == 0)
-+ error (1, *__errno_location (), "backtrace");
-+
-+ fprintf (stderr,
-+ fmt, program_invocation_name, file, line, function, assertion);
-+ backtrace_symbols_fd (&buffer[skip], nptrs - skip, STDERR_FILENO);
-+ fflush (stderr);
-+
-+ /* Die. */
-+ abort ();
-+}
-+
-+void
-+__assert_fail_backtrace (const char *assertion, const char *file,
-+ unsigned int line, const char *function)
-+{
-+ __assert_fail_base_backtrace ("%s: %s:%u: %s: Assertion '%s' failed.\n",
-+ assertion, file, line, function);
-+}
-+
-+void
-+__assert_perror_fail_backtrace (int errnum,
-+ const char *file,
-+ unsigned int line,
-+ const char *function)
-+{
-+ char errbuf[1024];
-+
-+ char *e = strerror_r (errnum, errbuf, sizeof errbuf);
-+ __assert_fail_base_backtrace ("%s: %s:%u: %s: Unexpected error: %s.\n",
-+ e, file, line, function);
-+
-+}
-+
-+#endif /* ! defined NDEBUG */
-diff --git a/libshouldbeinlibc/assert-backtrace.h b/libshouldbeinlibc/assert-backtrace.h
-new file mode 100644
-index 0000000..c54b810
---- /dev/null
-+++ b/libshouldbeinlibc/assert-backtrace.h
-@@ -0,0 +1,60 @@
-+/* Augment failing assertions with backtraces.
-+
-+ Copyright (C) 1994-2015 Free Software Foundation, Inc.
-+
-+ This file is part of the GNU Hurd.
-+
-+ The GNU Hurd is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU General Public License as
-+ published by the Free Software Foundation; either version 2, or (at
-+ your option) any later version.
-+
-+ The GNU Hurd is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with the GNU Hurd. If not, see <http://www.gnu.org/licenses/>. */
-+
-+#ifndef __ASSERT_BACKTRACE__
-+#define __ASSERT_BACKTRACE__
-+
-+#ifdef NDEBUG
-+
-+#define assert_backtrace(expr) ((void) 0)
-+#define assert_backtrace_perror(errnum) ((void) 0)
-+
-+#else /* NDEBUG */
-+
-+/* This prints an "Assertion failed" message, prints a stack trace,
-+ and aborts. */
-+void __assert_fail_backtrace (const char *assertion,
-+ const char *file,
-+ unsigned int line,
-+ const char *function)
-+ __attribute__ ((noreturn, unused));
-+
-+/* Likewise, but prints the error text for ERRNUM. */
-+void __assert_perror_fail_backtrace (int errnum,
-+ const char *file,
-+ unsigned int line,
-+ const char *function)
-+ __attribute__ ((noreturn, unused));
-+
-+#define assert_backtrace(expr) \
-+ ((expr) \
-+ ? (void) 0 \
-+ : __assert_fail_backtrace (__STRING(expr), \
-+ __FILE__, __LINE__, \
-+ __PRETTY_FUNCTION__))
-+
-+#define assert_perror_backtrace(expr) \
-+ ((expr == 0) \
-+ ? (void) 0 \
-+ : __assert_perror_fail_backtrace (expr, \
-+ __FILE__, __LINE__, \
-+ __PRETTY_FUNCTION__))
-+
-+#endif /* NDEBUG */
-+#endif /* __ASSERT_BACKTRACE__ */
---
-2.1.4
-