Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/DownloadRelationMemberTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/DownloadRelationMemberTask.java	(revision 4153)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/DownloadRelationMemberTask.java	(revision 4154)
@@ -41,5 +41,6 @@
     public DownloadRelationMemberTask(Relation parent, Collection<OsmPrimitive> children, OsmDataLayer curLayer, Dialog dialog) {
         super(tr("Download relation members"), new PleaseWaitProgressMonitor(dialog), false /* don't ignore exception */);
-        this.parents.add(parent);
+        if(parent != null)
+            this.parents.add(parent);
         this.children = children;
         this.curLayer = curLayer;
@@ -48,5 +49,6 @@
     public DownloadRelationMemberTask(Relation parent, Collection<OsmPrimitive> children, OsmDataLayer curLayer) {
         super(tr("Download relation members"), false /* don't ignore exception */);
-        this.parents.add(parent);
+        if(parent != null)
+            this.parents.add(parent);
         this.children = children;
         this.curLayer = curLayer;
@@ -89,5 +91,10 @@
 
     protected String buildDownloadFeedbackMessage() {
-        if (parents.size() == 1) {
+        if (parents.size() == 0) {
+            return trn("Downloading {0} incomplete object",
+                    "Downloading {0} incomplete objects",
+                    children.size(),
+                    children.size());
+        } else if (parents.size() == 1) {
             Relation parent = parents.iterator().next();
             return trn("Downloading {0} incomplete child of relation ''{1}''",
@@ -95,13 +102,12 @@
                     children.size(),
                     children.size(),
-                    parent.getDisplayName(DefaultNameFormatter.getInstance())
-            );
-        } else
+                    parent.getDisplayName(DefaultNameFormatter.getInstance()));
+        } else {
             return trn("Downloading {0} incomplete child of {1} parent relations",
                     "Downloading {0} incomplete children of  {1} parent relations",
                     children.size(),
                     children.size(),
-                    parents.size()
-            );
+                    parents.size());
+        }
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java	(revision 4153)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java	(revision 4154)
@@ -1317,8 +1317,5 @@
 
         protected void updateEnabledState() {
-            setEnabled(
-                    getRelation() != null
-                    && memberTableModel.hasIncompleteMembers()
-            );
+            setEnabled(memberTableModel.hasIncompleteMembers());
         }
 
@@ -1350,8 +1347,5 @@
 
         protected void updateEnabledState() {
-            setEnabled(
-                    getRelation() != null
-                    && memberTableModel.hasIncompleteSelectedMembers()
-            );
+            setEnabled(memberTableModel.hasIncompleteSelectedMembers());
         }
 
