Debug implemented the following behavior
change in 3.3 APIs, which is documented in the 3.3 migration guide. The
behavior has been like this since sometime in 3.3M5 but we should get formal
approval for the behavior change in 3.3 that could effect clients using
The change was made to properly support
the cancelation of creating/editing/deleting of multiple launch configurations
from the new "Run/Debug Settings" property page for resources.
We believe the number of effected clients will be small to none, as there
was no reason to create nested working copies in the past (i.e. create
a working copy from a working copy). The following entry appears the migration
guide's incompatibilities section.
Nested Launch Configuration Working
What is affected: Launch configuration
working copies support nesting in 3.3. Clients that programmatically create
and save launch configurations may be affected by the change in behavior
of the ILaunchConfigurationWorkingCopy.doSave() method.
Description: When a working copy (B)
is created from a working copy (A) which was created from a launch configuration
(X), the newly created working copy (B) is initialized with the attributes
from the first working copy (A). In 3.3, whenever a working copy is saved,
it is written back to the configuration from which it was created. In this
example working copy B will saves changes back to working copy A, and A
will save changes back to the original launch configuration (X). A nested
working copy has a parent working copy that can be retrieved by calling
getParent() (newly added in 3.3). In 3.2, working copies were not nested
and saving a working copy always resulted in the changes being saved back
to the original launch configuration.
Action required: APIs are binary
compatible but clients should examine calls to ILaunchConfiguration.getWorkingCopy()
and ILaunchConfigurationWorkingCopy.doSave() to determine if nested working
copies might be created. Note that saving a nested working copy will not
save changes back to the original launch configuration.