From d23874e4355912a308408d26bdd54b086f11dc4d Mon Sep 17 00:00:00 2001 From: Tomas Pecka <peckato1@fit.cvut.cz> Date: Wed, 1 Nov 2017 17:30:31 +0100 Subject: [PATCH] Fix stacktrace when /proc not available (closes #91) --- alib2common/src/debug/simpleStacktrace.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/alib2common/src/debug/simpleStacktrace.cpp b/alib2common/src/debug/simpleStacktrace.cpp index 794a41e690..4d1775f416 100644 --- a/alib2common/src/debug/simpleStacktrace.cpp +++ b/alib2common/src/debug/simpleStacktrace.cpp @@ -38,7 +38,11 @@ std::string simpleStacktrace(unsigned int max_frames) { /* Now read the symbolic link */ ret = readlink(linkname, buf, 512); - buf[ret] = 0; + if ( ret < 0 ) { + strcpy(buf, "[UNKNOWN]"); + } else { + buf[ret] = 0; + } std::stringstream ss; ss << "stack trace for process " << buf << " (PID:" << pid << "):"<< std::endl; @@ -132,3 +136,4 @@ std::string simpleStacktrace(unsigned int max_frames) { } } /* namespace ext */ + -- GitLab