diff options
author | Ed Willink | 2020-02-26 13:13:49 +0000 |
---|---|---|
committer | Ed Willink | 2020-02-26 13:16:08 +0000 |
commit | 3fba3fb7006c2649e7b6e93c6b509ee8b40a9f32 (patch) | |
tree | df342b62f431a99d70f868749bcf637773cdb804 /plugins | |
parent | 36f5669e75b946dad6dc3dce8fc127adafe17bf5 (diff) | |
download | org.eclipse.qvtd-3fba3fb7006c2649e7b6e93c6b509ee8b40a9f32.tar.gz org.eclipse.qvtd-3fba3fb7006c2649e7b6e93c6b509ee8b40a9f32.tar.xz org.eclipse.qvtd-3fba3fb7006c2649e7b6e93c6b509ee8b40a9f32.zip |
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/ConnectionManager.java | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/ConnectionManager.java b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/ConnectionManager.java index a1b836b6a..1aa81f3fe 100644 --- a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/ConnectionManager.java +++ b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/qvts2qvts/ConnectionManager.java @@ -1017,20 +1017,20 @@ public class ConnectionManager } public boolean isHazardousRead(@Nullable StringBuilder s, @NonNull Partition partition, @NonNull NavigationEdge edge) { - // if (edge.isRealized()) { - Role edgeRole = partition.getRole(edge); - assert edgeRole != null; - if (!edgeRole.isRealized()) { - Node sourceNode = QVTscheduleUtil.getSourceNode(edge); - if (sourceNode.isTrace()) { - return false; // Trace edges are not hazardous - defined by caller / realizer - } - Node targetNode = QVTscheduleUtil.getTargetNode(edge); - if (targetNode.isTrace()) { - return false; // Tolerate the opposite + if (!edge.isSuccess()) { + Role edgeRole = partition.getRole(edge); + assert edgeRole != null; + if (!edgeRole.isRealized()) { + Node sourceNode = QVTscheduleUtil.getSourceNode(edge); + if (sourceNode.isTrace()) { + return false; // Trace edges are not hazardous - defined by caller / realizer + } + Node targetNode = QVTscheduleUtil.getTargetNode(edge); + if (targetNode.isTrace()) { + return false; // Tolerate the opposite + } } } - // } Property property = QVTscheduleUtil.getReferredProperty(edge); @SuppressWarnings("unused") String name = property.getName(); Property oppositeProperty = property.getOpposite(); |