Bug report #13080
QT Forms. Opening two forms using IdentifyFeatures crashes
Status: | Rejected | ||
---|---|---|---|
Priority: | High | ||
Assignee: | - | ||
Category: | Forms | ||
Affected QGIS version: | 2.10.0 | Regression?: | No |
Operating System: | Easy fix?: | No | |
Pull Request or Patch supplied: | No | Resolution: | wontfix |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 21148 |
Description
The following bug is referring to #12729 and related #12676 and #12711. The issue was expected to be fixed in version 2.10.0. The problem is not solved.
On the properties of a layer we have selected on "fields tab" the "provide ui-file" option and we specified a tesform.ui in "Edit-ui". the test form is used to specified points as bus stops. In the "python init function" we specified a checktestform.py in order to active some field validations.
If we try to click twice on the point then there a strange behavior of the .py validations and upon closing the form then the system crashes.
We have tested it in different scenarios and the system is not able to handle two forms at the same time if you specify a .py in python init function.
If you omit the python init function then there is no problem.
Thanks
Related issues
History
#1 Updated by Matthias Kuhn over 9 years ago
- Status changed from Open to Feedback
Are you using "global" variables in your init function?
#2 Updated by Stelios Papageorgiou over 9 years ago
Yes we are using globals
thanks
#3 Updated by Giovanni Manghi over 9 years ago
- Status changed from Feedback to Open
- Category set to Forms
#4 Updated by Giovanni Manghi over 7 years ago
- Status changed from Open to Feedback
- Crashes QGIS or corrupts data changed from No to Yes
- Priority changed from Normal to High
What is the status of this issue on 2.18.4 or qgis3/master?
#5 Updated by Matthias Kuhn over 7 years ago
- Resolution set to wontfix
- Status changed from Feedback to Rejected
Crashes using globals and opening multiple forms in parallel is expected.
The solution is: don't use globals (and especially not in circumstances like this where multiple components write to them in parallel).