| Summary: | infinite recursion & crash when importing c++ classes | ||
|---|---|---|---|
| Product: | [Applications] umbrello | Reporter: | Ingo Molnar <mingo> |
| Component: | general | Assignee: | Umbrello Development Group <umbrello-devel> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | powermanga.hpp file | ||
|
Description
Ingo Molnar
2005-09-14 13:45:14 UTC
Created attachment 12568 [details]
powermanga.hpp file
powermanga.hpp attached. Sometimes you need to import it twice to get the
crash. Might be releated to heap/stack use?
the file is under GPLv2.
SVN commit 461005 by okellogg:
addEnumLiteral(): Check that the name is not already present in m_List.
BUG:112590
M +6 -0 enum.cpp
--- branches/KDE/3.5/kdesdk/umbrello/umbrello/enum.cpp #461004:461005
@@ -84,6 +84,12 @@
}
UMLObject* UMLEnum::addEnumLiteral(const QString &name, Uml::IDType id) {
+ UMLObject *el = UMLCanvasObject::findChildObject(name);
+ if (el != NULL) {
+ kdDebug() << "UMLEnum::addEnumLiteral: " << name
+ << " is already present" << endl;
+ return el;
+ }
UMLEnumLiteral* literal = new UMLEnumLiteral(this, name, id);
m_List.append(literal);
emit modified();
|