[Uml-devel] kdesdk/umbrello/umbrello
Oliver Kellogg
okellogg at users.sourceforge.net
Thu Jan 13 09:15:14 UTC 2005
CVS commit by okellogg:
feedTheModel(): Check m_seenFiles at each #included file.
M +11 -6 classimport.cpp 1.62
--- kdesdk/umbrello/umbrello/classimport.cpp #1.61:1.62
@@ -254,9 +254,5 @@ void ClassImport::createGeneralization(U
void ClassImport::feedTheModel(QString fileName) {
QMap<QString, Dependence> deps = m_driver->dependences(fileName);
- if (deps.empty()) {
- if (m_seenFiles.find(fileName) != m_seenFiles.end())
- return;
- m_seenFiles.append(fileName);
- } else {
+ if (! deps.empty()) {
QMap<QString, Dependence>::Iterator it;
for (it = deps.begin(); it != deps.end(); ++it) {
@@ -264,8 +260,17 @@ void ClassImport::feedTheModel(QString f
continue;
QString includeFile = it.key();
+ if (includeFile.isEmpty()) {
+ kdError() << fileName << ": " << it.data().first
+ << " not found" << endl;
+ continue;
+ }
kdDebug() << fileName << ": " << includeFile << " => " << it.data().first << endl;
+ if (m_seenFiles.find(includeFile) == m_seenFiles.end())
feedTheModel(includeFile);
}
}
+ if (m_seenFiles.find(fileName) != m_seenFiles.end())
+ return;
+ m_seenFiles.append(fileName);
TranslationUnitAST *ast = m_driver->translationUnit( fileName );
if (ast == NULL) {
More information about the umbrello-devel
mailing list