Opened 10 years ago

Last modified 10 years ago

#8337 closed Bugs

The internal representation of "std::string(this->code()->message())" escapes, but is destroyed when it exits scope. — at Initial Version

Reported by: Richard <legalize@…> Owned by: Anthony Williams
Milestone: Boost 1.54.0 Component: thread
Version: Boost 1.52.0 Severity: Problem
Keywords: Cc:

Description

Coverity static analysis reported the following problem:

class BOOST_SYMBOL_VISIBLE future_error

: public std::logic_error

{

system::error_code ec_;

public:

future_error(system::error_code ec) : logic_error(ec.message()),

ec_(ec)

{ }

const system::error_code& code() const BOOST_NOEXCEPT {

return ec_;

} const char* what() const BOOST_THREAD_NOEXCEPT_OR_THROW {

CID 10932 (#2 of 2): Wrapper object use after free (WRAPPER_ESCAPE)1. escape: The internal representation of "std::string(this->code()->message())" escapes, but is destroyed when it exits scope.

return code().message().c_str();

}

};

Change History (0)

Note: See TracTickets for help on using tickets.