Index: src/org/openstreetmap/josm/command/SplitWayCommand.java
===================================================================
--- src/org/openstreetmap/josm/command/SplitWayCommand.java	(revision 17367)
+++ src/org/openstreetmap/josm/command/SplitWayCommand.java	(working copy)
@@ -466,17 +466,17 @@
                         RelationInformation rValue = treatAsRestriction(r, rm, c, newWays, way, changedWayNodes);
                         if (rValue.warnme) warnings.add(WarningType.GENERIC);
                         insert = rValue.insert;
-                        c = rValue.relation;
+                        c = rValue.relation; // Value.relation is null or contains a modified copy
                     } else if (!isOrderedRelation) {
                         // Warn the user when relations that are not a route or multipolygon are modified as a result
                         // of splitting up the way, because we can't tell if this might break anything.
                         warnings.add(WarningType.GENERIC);
                     }
-                    if (c == null) {
-                        c = new Relation(r);
-                    }
 
                     if (insert) {
+                        if (c == null) {
+                            c = new Relation(r);
+                        }
                         if (rm.hasRole() && !nowarnroles.contains(rm.getRole())) {
                             warnings.add(WarningType.ROLE);
                         }
@@ -824,6 +824,8 @@
             }
         } else if (!"via".equals(role)) {
             relationInformation.warnme = true;
+        } else {
+            relationInformation.insert = true;
         }
         relationInformation.relation = c;
         return relationInformation;
