re PR other/61895 (libbacktrace crashes with bus error with empty file argv[0])
authorIan Lance Taylor <ian@gcc.gnu.org>
Sat, 2 Aug 2014 00:54:15 +0000 (00:54 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Sat, 2 Aug 2014 00:54:15 +0000 (00:54 +0000)
commitdc14e88e07ba3c0d8b7ef1f3183240d6f6428be3
treed37998f4cbceacc74d2de058a6ad5c59557e4f02
parent3bc63227d5eb38a70adee7375e5d3596e9c7ec01
re PR other/61895 (libbacktrace crashes with bus error with empty file argv[0])

PR other/61895

runtime: Ignore small argv[0] file for backtrace.

Reportedly in some cases Docker starts processes with argv[0]
pointing to an empty file.  That would cause libgo to pass
that empty file to libbacktrace, which would then fail to do
any backtraces.  Everything should work fine if libbacktrace
falls back to /proc/self/exe.

This patch to libgo works around the problem by ignoring
argv[0] if it is a small file, or if stat fails.  This is not
a perfect fix but it's an unusual problem.

From-SVN: r213513
libgo/runtime/go-caller.c