If a subprocess is canceled (with end()) and its superprocess is also canceled the superprocess is triggered anyway and the superprocess runs to the next state, although it is ended already!
You can argue, that a running subprocess of a superprocess is a invalid state (but ending a superprocess doesn't cancel the subprocesses by the way), but a simple if (!hasEnded()) would be very nice I think.
Or other opinions?
Are there solutions to this on their way in 3.1? Or shall I create a JIRA-Issue?