Community
Participate
Working Groups
Build Identifier: Version: Indigo Service Release 2 Build id: 20120216-1857 When using two connections between two objects and deleting the "straight" one, the other one does not get revalidated. When the other connection is added again, both are drawn bend and overlay each other. This image should illustrate the issue: http://imageshack.us/photo/my-images/856/routerb.jpg The router uses this part to get check the other connections: int index = connections.remove(connectionKey, conn); for (int i = index + 1; i < connectionList.size(); i++) ((Connection) connectionList.get(i)).revalidate(); Because i is 1 (because the index is 0) and the size of the list is also 1, the loop is never entered. When the connection is added again, the router assumes, that the existing one is routed straight and therefor also bends the new connection. Reproducible: Always Steps to Reproduce: 1.Use a AutomaticRouter (e.g. FanRouter) for the editor/connection layer 2.add two objects and connect them with two connections 3.delete the straight connection 4.add a new connection between the two objects
Created attachment 225243 [details] Fixed loop start value After removing an item from the list, the index of the item that follows the one being removed is equal to the old index of the removed item.