mirror of
https://github.com/catchorg/Catch2.git
synced 2025-05-24 13:39:24 +00:00
Fixed dereferenced null issue
This commit is contained in:
parent
59d556907d
commit
5daa22dcc3
5 changed files with 16 additions and 19 deletions
|
@ -22,17 +22,11 @@ namespace Catch {
|
|||
void operator=( Context const& );
|
||||
|
||||
public: // IContext
|
||||
virtual IResultCapture& getResultCapture() {
|
||||
if( m_resultCapture )
|
||||
return *m_resultCapture;
|
||||
else
|
||||
throw std::logic_error( "No result capture instance" );
|
||||
virtual IResultCapture* getResultCapture() {
|
||||
return m_resultCapture;
|
||||
}
|
||||
virtual IRunner& getRunner() {
|
||||
if( m_runner )
|
||||
return *m_runner;
|
||||
else
|
||||
throw std::logic_error( "No runner instance" );
|
||||
virtual IRunner* getRunner() {
|
||||
return m_runner;
|
||||
}
|
||||
virtual size_t getGeneratorIndex( std::string const& fileInfo, size_t totalSize ) {
|
||||
return getGeneratorsForCurrentTest()
|
||||
|
@ -63,7 +57,7 @@ namespace Catch {
|
|||
|
||||
private:
|
||||
IGeneratorsForTest* findGeneratorsForCurrentTest() {
|
||||
std::string testName = getResultCapture().getCurrentTestName();
|
||||
std::string testName = getResultCapture()->getCurrentTestName();
|
||||
|
||||
std::map<std::string, IGeneratorsForTest*>::const_iterator it =
|
||||
m_generatorsByTestName.find( testName );
|
||||
|
@ -75,7 +69,7 @@ namespace Catch {
|
|||
IGeneratorsForTest& getGeneratorsForCurrentTest() {
|
||||
IGeneratorsForTest* generators = findGeneratorsForCurrentTest();
|
||||
if( !generators ) {
|
||||
std::string testName = getResultCapture().getCurrentTestName();
|
||||
std::string testName = getResultCapture()->getCurrentTestName();
|
||||
generators = createGeneratorsForTest();
|
||||
m_generatorsByTestName.insert( std::make_pair( testName, generators ) );
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue