Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordwagelaar2014-04-11 15:51:48 -0400
committerdwagelaar2014-04-11 15:51:48 -0400
commit2bcbeec856bbd9b2488c17c30ffd34c5449505a0 (patch)
tree22d1fc6467e148ead2367c5dd5f7dd465ef163e2 /plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse
parent460da0866d1c156cf2f389190f23691ac8be4e5b (diff)
downloadorg.eclipse.atl-2bcbeec856bbd9b2488c17c30ffd34c5449505a0.tar.gz
org.eclipse.atl-2bcbeec856bbd9b2488c17c30ffd34c5449505a0.tar.xz
org.eclipse.atl-2bcbeec856bbd9b2488c17c30ffd34c5449505a0.zip
Convert InlineCodeblocks.atl to refining mode + bugfixes.
Diffstat (limited to 'plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse')
-rw-r--r--plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/ExecEnvImpl.java4
-rw-r--r--plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/LocalVariableInstructionImpl.java14
2 files changed, 18 insertions, 0 deletions
diff --git a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/ExecEnvImpl.java b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/ExecEnvImpl.java
index 4111da5d..eff95be5 100644
--- a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/ExecEnvImpl.java
+++ b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/ExecEnvImpl.java
@@ -1113,6 +1113,10 @@ public class ExecEnvImpl extends EObjectImpl implements ExecEnv {
}
// Prevent ConcurrentModificationException by using eObjects copy
for (EObject o : eObjects) {
+ // Skip remapping on objects queued for deletion
+ if (deletionQueue.containsKey(o)) {
+ continue;
+ }
for (EReference ref : o.eClass().getEAllReferences()) {
// Only change changeable references that are not the reverse of a containment reference
if (ref.isChangeable() && !ref.isContainer()) {
diff --git a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/LocalVariableInstructionImpl.java b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/LocalVariableInstructionImpl.java
index a8b30f26..79c5698b 100644
--- a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/LocalVariableInstructionImpl.java
+++ b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/impl/LocalVariableInstructionImpl.java
@@ -411,6 +411,20 @@ public abstract class LocalVariableInstructionImpl extends InstructionImpl imple
* {@inheritDoc}
*/
@Override
+ public void eNotify(Notification notification) {
+ super.eNotify(notification);
+ switch (notification.getFeatureID(null)) {
+ case EmftvmPackage.CODE_BLOCK__CODE:
+ setCbOffset(CB_OFFSET_EDEFAULT);
+ setLocalVariableIndex(LOCAL_VARIABLE_INDEX_EDEFAULT);
+ break;
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
public String toString() {
if (eIsProxy()) return super.toString();

Back to the top