diff --git a/src/java/org/apache/ivy/plugins/version/LatestVersionMatcher.java b/src/java/org/apache/ivy/plugins/version/LatestVersionMatcher.java
index 5a30b24..2ab2b33 100644
--- a/src/java/org/apache/ivy/plugins/version/LatestVersionMatcher.java
+++ b/src/java/org/apache/ivy/plugins/version/LatestVersionMatcher.java
@@ -39,12 +39,6 @@
     }
 
     public boolean needModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid) {
-        // if asking for a branch, foundMrid will likely have an invalid value that doesn't
-        // come from the module descriptor itself. return true so accept is given the real
-        // module descriptor with the correct branch.
-        if (askedMrid.getBranch() != null) {
-            return true;
-        }
         List<Status> statuses = StatusManager.getCurrent().getStatuses();
         Status lowest = (Status) statuses.get(statuses.size() - 1);
         String latestLowest = "latest." + lowest.getName();
diff --git a/test/java/org/apache/ivy/plugins/version/LatestVersionMatcherTest.java b/test/java/org/apache/ivy/plugins/version/LatestVersionMatcherTest.java
index f72d899..5997e83 100644
--- a/test/java/org/apache/ivy/plugins/version/LatestVersionMatcherTest.java
+++ b/test/java/org/apache/ivy/plugins/version/LatestVersionMatcherTest.java
@@ -42,13 +42,6 @@
         assertNeed("latest.integration", false);
     }
 
-    public void testNeedModuleDescriptorForBranches() throws Exception {
-        assertNeed("latest.release", "trunk", true);
-        assertNeed("latest.milestone", "trunk", true);
-        // different branches will have different latest.integration artifacts
-        assertNeed("latest.integration", "trunk", true);
-    }
-
     public void testNeedModuleDescriptorCustomStatus() throws Exception {
         StatusManager.getCurrent().addStatus(new Status("release", false));
         StatusManager.getCurrent().addStatus(new Status("snapshot", true));
