Render problems

0 votes
asked Sep 24, 2014 in Bug by anonymous
Use this activity flow with the new systax:

@startuml

:process;

while (available?) is (no)
  if (condition?) then (yes)
    :other process;
    end
  elseif (no) then (yes)
  else (no)
  endif
endwhile (yes)

end

@enduml

The arrows from "no" conditions are merged but the merged arrow is starting from wrong place
commented Sep 24, 2014 by nikoapos (120 points)
I faced the same bug with an if conditional that contains stop commands. I think that the following example demonstrates better the problem (it is the example from the web page with minor changes):

@startuml
start
if (condition A) then (yes)
  :Text 1;
  stop
elseif (condition B) then (yes)
  :Text 2;
  stop
elseif (condition C) then (yes)
  :Text 3;
  stop
elseif (condition D) then (yes)
  :Text 4;
else (nothing)
  :Text else;
endif
stop
@enduml

As you can see, the arrow always starts at the middle of the conditionals. If the first conditional which does continue is after the middle, there is a part of the line that is not rendered.

The workaround I used was to rearrange the conditionals.

1 Answer

0 votes
answered Sep 24, 2014 by plantuml (294,960 points)
Thanks for the feedback.

This is somehow solved in 8008beta4 : https://dl.dropboxusercontent.com/u/13064071/plantuml.jar

(The drawing is not perfect yet)
...