how-lix-os-pkgs/libelf/default/patches-available/musl-strerror_r.patch

20 lines
598 B
Diff

--- a/libdwfl/dwfl_error.c 2015-09-29 17:18:51.000000000 +0200
+++ b/libdwfl/dwfl_error.c 2015-11-20 05:11:29.889002058 +0100
@@ -154,7 +154,16 @@
switch (error &~ 0xffff)
{
case OTHER_ERROR (ERRNO):
+#if defined(__GLIBC__)
return strerror_r (error & 0xffff, "bad", 0);
+#else
+ {
+ static __thread char buf[128] = "";
+ if (0 == strerror_r(error & 0xffff, buf, sizeof(buf)))
+ return buf;
+ }
+ return "strerror_r() failed";
+#endif
case OTHER_ERROR (LIBELF):
return elf_errmsg (error & 0xffff);
case OTHER_ERROR (LIBDW):