diff --git a/src/archutils/Unix/Backtrace.cpp b/src/archutils/Unix/Backtrace.cpp index 897588e747..44d131f05b 100644 --- a/src/archutils/Unix/Backtrace.cpp +++ b/src/archutils/Unix/Backtrace.cpp @@ -76,6 +76,8 @@ static int get_readable_ranges( const void **starts, const void **ends, int size while( !eof && got < size-1 ) { int ret = read( fd, file+file_used, sizeof(file) - file_used); + if( ret == -1 ) + return false; if( ret < int(sizeof(file)) - file_used) eof = true;