Opened 12 years ago
Closed 11 years ago
#2165 closed defect (fixed)
Within crashes OMEdit
Reported by: | Per Östlund | Owned by: | Adeel Asghar |
---|---|---|---|
Priority: | high | Milestone: | 1.9.0 |
Component: | OMEdit | Version: | trunk |
Keywords: | Cc: |
Description
Using 'within' can cause OMEdit to crash. Steps to reproduce:
1) Create a new class, name doesn't matter.
2) Change to text view.
3) Add e.g. 'within A;' at the top.
4) Double-click on the model in the libraries browser, or click simulate, or pretty much anything else.
5) Watch OMEdit crash.
The crash occurs in ModelWidget::setModelModified, and is caused by pLibraryTreeNode being a null pointer since pLibraryTreeWidget->getLibraryTreeNode can't find the class and returns null.
I don't care how this is solved, as long as it doesn't crash. Ideally OMEdit should create the necessary packages, if they don't exist, and put the class in the location specified by the within-clause. Or it could just reject the class.
Fixed in r16746.
OMEdit rejects the class if the package doesn't exist OR if package does exist then it accepts and move the class accordingly.