Community
Participate
Working Groups
For any tab, performApply(ILaunchConfigurationWorkingCopy) is called twice from LaunchConfigurationDialog.doSave(): once in updateWorkingCopyFromPages() and once in isWorkingCopyDirty()
Please investigate. (NOTE: There is no harm to calling perform apply twice - i.e. it breaks no contracts/API. I think this may be part of our logic to determine if there are any changes made.)
This is a fair point: doSave() does an explicit call to updateWorkingCopyFromPages(), then immediately does a call to isWorkingCopyDirty(). This last method also does a call to updateWorkingCopyFromPages(), after a few preliminary checks. It seems that we could just remove the explicit call in doSave(), but at this late stage in 2.0, that's a little scary. Deferring for post-2.0.
Resolving to later.
*** Bug 25461 has been marked as a duplicate of this bug. ***
Re-opening
Made fix by removing explicit call to updateWorkingCopyFromPages() from doSave().
Please verify, Darin W.
Verified
Re-opening. This fix has caused a problem - bug 26027.
*** Bug 26027 has been marked as a duplicate of this bug. ***
Fixed, by adding call to "update working copy" when constructing a new configuration.
please verify, Joe.
Verified.
Joe, The problem is still there in M3. Please re-open.
Re-opening.
The problem as originally described seems to be fixed. When clicking Run/Debug, there ARE two calls to performApply(), but only one is from doSave(), the other is from doLaunch() (both these methods do calls to isWorkingCopyDirty()). I'm not sure that this is a serious issue. Darin W, comments?
The problem that I described in bug 25461 is still there. Calling performApply() "twice" upon exiting a page that contains info about >1000 plugins results in the data being saved unnecessarily for a second time, and causes a very noticeable delay when developing against products such as WSADIE. PDE currently has over-protective checks for this second unnecessary call to performApply() and does nothing on the second call. However, PDE should not have to do that.
Fixed.
Please verify, Joe.