| Summary: | Umbrello - Saving trashes model, classes lost | ||
|---|---|---|---|
| Product: | [Applications] umbrello | Reporter: | Allan Todd <kde> |
| Component: | general | Assignee: | Umbrello Development Group <umbrello-devel> |
| Status: | RESOLVED WORKSFORME | ||
| Severity: | normal | CC: | finex |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | RedHat Enterprise Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed In: | ||
| Sentry Crash Report: | |||
| Attachments: | This is the model which I have the problem with. | ||
|
Description
Allan Todd
2006-12-04 14:17:25 UTC
Created attachment 18779 [details]
This is the model which I have the problem with.
Just open it, click a diagram (to make it modified) and save it again. All the
classes will disappear :(
SVN commit 610682 by okellogg:
resolveRef(): Don't remove a whole package or folder from m_objects only
because one of its leaf object's resolveRef() failed.
This is the hotfix.
TODO: Analyze which leaf object's resolveRef() failed, and why.
CCBUG:138344
M +3 -1 package.cpp
--- branches/KDE/3.5/kdesdk/umbrello/umbrello/package.cpp #610681:610682
@@ -233,7 +233,9 @@
for (UMLObjectListIt oit(m_objects); oit.current(); ++oit) {
UMLObject *obj = oit.current();
if (! obj->resolveRef()) {
- m_objects.remove(obj);
+ Uml::Object_Type ot = obj->getBaseType();
+ if (ot != Uml::ot_Package && ot != Uml::ot_Folder)
+ m_objects.remove(obj);
overallSuccess = false;
}
}
Works for me on current trunk revision :-) |