Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java	(revision 3924)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java	(revision 3925)
@@ -961,12 +961,6 @@
         for (int i=0; i<members.size(); ++i) {
             final RelationMember m = members.get(i);
-            if (! m.isWay()) {
-                con.set(i, new WayConnectionType());
-                firstGroupIdx = i;
-                continue;
-            }
-
-            final Way w = m.getWay();
-            if (w == null || w.isIncomplete()) {
+            if (!m.isWay() || m.getWay() == null || m.getWay().isIncomplete()) {
+                if(i > 0) makeLoopIfNeeded(con, i-1);
                 con.set(i, new WayConnectionType());
                 firstGroupIdx = i;
@@ -1023,7 +1017,4 @@
         makeLoopIfNeeded(con, members.size()-1);
         connectionType = con;
-        //        for (int i=0; i<con.size(); ++i) {
-        //            System.err.println(con.get(i));
-        //        }
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/WayConnectionType.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/WayConnectionType.java	(revision 3924)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/WayConnectionType.java	(revision 3925)
@@ -40,5 +40,4 @@
     public boolean isOnewayHead = false;
     public boolean isOnewayTail = false;
-//    public boolean isOnewayOppositeConnected = true;
 
     public WayConnectionType(boolean linkPrev, boolean linkNext, Direction direction) {
