From 8167167bc9319e45502fe2df9813a120bf7adc4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacob=20St=C3=B8ren?= Date: Tue, 31 Mar 2020 11:20:01 +0200 Subject: [PATCH] Add debug output to pinpoint strange path origin --- .../ProjectDataModel/RimProject.cpp | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/ApplicationCode/ProjectDataModel/RimProject.cpp b/ApplicationCode/ProjectDataModel/RimProject.cpp index bdd33f34fe..92885792f2 100644 --- a/ApplicationCode/ProjectDataModel/RimProject.cpp +++ b/ApplicationCode/ProjectDataModel/RimProject.cpp @@ -1538,6 +1538,40 @@ private: std::map m_oldPathToPathIdMap; }; +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void reportOnStrangePath( caf::PdmObjectHandle* object ) +{ + if ( !object ) return; + + std::vector*> fields; + + std::vector allFieldsInObject; + object->fields( allFieldsInObject ); + + std::vector children; + + for ( const auto& field : allFieldsInObject ) + { + caf::PdmField* typedField = dynamic_cast*>( field ); + if ( typedField && ( ( *typedField )().path() == "/private/hhgs" ) ) + { + fields.push_back( typedField ); + std::cout << "Found path: " << typedField->ownerObject()->xmlCapability()->classKeyword().toStdString() + << "." << typedField->keyword().toStdString() << ": " << ( *typedField )().path().toStdString() + << std::endl; + } + + field->childObjects( &children ); + } + + for ( const auto& child : children ) + { + reportOnStrangePath( child ); + } +} + //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -1545,6 +1579,8 @@ void RimProject::transferPathsToGlobalPathList() { GlobalPathListMapper pathListMapper( m_globalPathList() ); + reportOnStrangePath( this ); + std::vector filePaths; fieldContentsByType( this, filePaths );