diff --git a/lib/features/rules/BpmnRules.js b/lib/features/rules/BpmnRules.js index a03b5fec..cf323041 100644 --- a/lib/features/rules/BpmnRules.js +++ b/lib/features/rules/BpmnRules.js @@ -268,7 +268,8 @@ function isSameOrganization(a, b) { function isMessageFlowSource(element) { return ( - is(element, 'bpmn:InteractionNode') && ( + is(element, 'bpmn:InteractionNode') && + !is(element, 'bpmn:BoundaryEvent') && ( !is(element, 'bpmn:Event') || ( is(element, 'bpmn:ThrowEvent') && hasEventDefinitionOrNone(element, 'bpmn:MessageEventDefinition') @@ -280,6 +281,7 @@ function isMessageFlowSource(element) { function isMessageFlowTarget(element) { return ( is(element, 'bpmn:InteractionNode') && + !is(element, 'bpmn:BoundaryEvent') && !isForCompensation(element) && ( !is(element, 'bpmn:Event') || ( is(element, 'bpmn:CatchEvent') && diff --git a/test/spec/features/rules/BpmnRulesSpec.js b/test/spec/features/rules/BpmnRulesSpec.js index 51071606..3d4f9d70 100644 --- a/test/spec/features/rules/BpmnRulesSpec.js +++ b/test/spec/features/rules/BpmnRulesSpec.js @@ -656,7 +656,7 @@ describe('features/modeling/rules - BpmnRules', function() { expectCanConnect('Task_in_OtherProcess', 'BoundaryEvent_on_SubProcess', { sequenceFlow: false, - messageFlow: true, + messageFlow: false, association: false, dataAssociation: false });