Broken project (#1499)
Just opened my project to see some of my diagrams' elements are missing, even in the .simp and .simp.back files.
I don't know what happened: I saved a good version yesterday and get a broken today.
http://www.image-share.com/ijpg-3463-173.html
I get this exception when I try to look for a broken element's properties :
System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
à SoftwareIdeasModeler.Dialogs.Properties.ItemPropertiesForm.BindData()
à SoftwareIdeasModeler.Sidebars.ProjectTree.ProjectTreeSidebar.propertiesToolStripMenuItem_Click(Object sender, EventArgs e)
à System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
à System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
à System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ToolStrip.WndProc(Message& m)
à System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
OF=SoftwareIdeasModeler.MainForm
LastCmd=SoftwareIdeas.Common.Commands.CombinedCommand
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.FolderOverviewForm
OF=SoftwareIdeasModeler.Forms.EditorForm
Sometimes I can select an empty element in a broken diagram. I tried to rename one and now I get this exception when I click in the diagram window :
System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
à SoftwareIdeasModeler.Core.Projecting.ConcreteDiagramElement.get_Project()
à SoftwareIdeasModeler.SimDiagramControl.ConfirmEditing(Boolean editNext)
à SoftwareIdeasModeler.SimDiagramControl.canvas_MouseDown(Object sender, MouseEventArgs e)
à System.Windows.Forms.Control.OnMouseDown(MouseEventArgs e)
à System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
OF=SoftwareIdeasModeler.MainForm
LastCmd=SoftwareIdeas.Common.Commands.CombinedCommand
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.FolderOverviewForm
OF=SoftwareIdeasModeler.Forms.EditorForm
Sometimes I get this one too (I don't know how anyway):
System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
à SoftwareIdeasModeler.Core.Projecting.ConcreteDiagramElement.get_ChangeTrackingState()
à SoftwareIdeasModeler.Core.Commands.BaseCommands.ChangeTrackedCommand..ctor(IChangeTrackable trackedElement)
à SoftwareIdeasModeler.Core.Commands.Renaming.RenameProjectItemCommand..ctor(IProjectItem item, String newName)
à SoftwareIdeasModeler.Sidebars.ProjectTree.ProjectTreeSidebar.projectTree_AfterLabelEdit(Object sender, NodeLabelEditEventArgs e)
à SoftwareIdeas.Controls.FastTree.FastTree.OnAfterLabelEdit(NodeLabelEditEventArgs e)
à SoftwareIdeas.Controls.FastTree.FastTree.ConfirmEdit()
à SoftwareIdeas.Controls.FastTree.FastTree.treePanel_MouseDown(Object sender, MouseEventArgs e)
à System.Windows.Forms.Control.OnMouseDown(MouseEventArgs e)
à System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
OF=SoftwareIdeasModeler.MainForm
LastCmd=SoftwareIdeas.Common.Commands.CombinedCommand
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.EditorForm
OF=SoftwareIdeasModeler.Forms.FolderOverviewForm
OF=SoftwareIdeasModeler.Forms.EditorForm
Oh, and know I'm trying to redo a broken diagram (in another diagram, just in case that the broken one would be in conflict with the new one): after creating a new package and adding some classes into it (using drag&drop from the tool bar), I tried to add a new one (using the same procedure) and now I got this :
http://www.image-share.com/ijpg-3463-172.html
Well, I just lost a day of work, it's pretty annoying.
Olivier Defaux 3 March 2017 11:01:42
Sorry, I can't send the broken project due to privacy policy.
I noticed this bug report about Project File Corrupting (28 May 2016): https://www.softwareideas.net/rq-473/Project-File-Corrupting
The bug may be the same: I noticed that my broken diagrams were associated with another one(s).
Anyway, I fixed the last issue by restarting the editor.
Dusan Rodina - softwareideas.net 3 March 2017 11:54:57
I understand.
Did you use only the version 10.x for editing the file or also 9.x? The issue #473 was caused by a bug in version 9.x with high probability.
We will analyze the possible reasons and let you know (and fix the identified bug) as soon as possible.
Olivier Defaux 3 March 2017 11:56:41
I only use the version 10.x
Dusan Rodina - softwareideas.net 3 March 2017 12:47:28
It will also help us, if you remember the steps you made during the diagram creation or if you can make some small example project with random names (without sensitive data) but with similar structure, which may lead to this problem.
Anyway, internal analysis will continue and other combination of actions and structure will be checked.
The bugs which were reported in previous versions were fixed and they are covered by unit tests now, so bugs should not reappear in same situation in future versions. After investigation of this new issue, a new test for this scenario will be added to our automated tests.
Olivier Defaux 3 March 2017 12:58:08
Sorry, I don't know how it happened and I don't have enough time to create an example project (by the way I don't remember all the steps).
Dusan Rodina - softwareideas.net 3 March 2017 13:52:12
No problem, we will do our best to find out the reason and fix it.
Dusan Rodina - softwareideas.net 3 March 2017 16:11:22
The cause was probably identified. Can you confirm that you did these steps (or similar):
1. Use Element-Model/Editing/Replace Element Model to replace original model O to model M (model M is from another diagram or folder)
2. Delete the diagram which is model owner of model M
3. Save
4. Load - reference is lost
This bug will be fixed very soon and it is the highest priority now.
Olivier Defaux 6 March 2017 9:58:25
No, I don't remember doing such things, but:
1. I moved elements-models from folders to another folders. By the way, some elements were associated with theses moved elements, maybe there is a clue?
2. All seamed to work well in the editor; I saved the project
3. The next day, I loaded the project and most of the elements were gone
This is the most I can remember so far.
Dusan Rodina - softwareideas.net 6 March 2017 23:42:51
The problem can occur also when a container element with nested elements is moved from a diagram to another one, then the original diagram is deleted and the nested elements are readded to the new diagram from the container subtree.
This bug and others were fixed in the new version 10.67.
Dusan Rodina - softwareideas.net 3 March 2017 10:29:15
I apologize for this very unpleasant problem. We take it very seriously and with highest priority. If it is possible, could you please send us the broken project on softwareideas@softwareideas.net. It can speed up the analysis of this bug.