X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fconnection%2FModelledConnectionAdvisor.java;h=16495f4cc36af5f9c153d9956b197c746f26866b;hp=8ecf158745efb601864335cd19411e36196d03dd;hb=bd5bc6e45f700e755b61bd112631796631330ecb;hpb=969bd23cab98a79ca9101af33334000879fb60c5 diff --git a/bundles/org.simantics.diagram/src/org/simantics/diagram/connection/ModelledConnectionAdvisor.java b/bundles/org.simantics.diagram/src/org/simantics/diagram/connection/ModelledConnectionAdvisor.java index 8ecf15874..16495f4cc 100644 --- a/bundles/org.simantics.diagram/src/org/simantics/diagram/connection/ModelledConnectionAdvisor.java +++ b/bundles/org.simantics.diagram/src/org/simantics/diagram/connection/ModelledConnectionAdvisor.java @@ -127,7 +127,13 @@ public class ModelledConnectionAdvisor implements IConnectionAdvisor { cps.add(getConnectionPoint(graph, element2, term2, true)); ConnectionJudgement judgement = modelingRules.judgeConnection(graph, cps); - if (judgement.type == ConnectionJudgementType.LEGAL) + if (judgement.type == ConnectionJudgementType.LEGAL + // #6751, Apros #12404: a connection should not be automatically + // denied just because it is not perfectly legal. Further legality + // should be decided on the client side even though the IConnectionAdvisor + // interface is not documented to return ConnectionJudgement instances, + // because the interface knows nothing about this class. + || judgement.type == ConnectionJudgementType.CANBEMADELEGAL) return judgement; return null; }