Index: test/java/org/apache/ivy/osgi/core/OSGiManifestParserTest.java
===================================================================
--- test/java/org/apache/ivy/osgi/core/OSGiManifestParserTest.java	(revision 1532780)
+++ test/java/org/apache/ivy/osgi/core/OSGiManifestParserTest.java	(working copy)
@@ -23,7 +23,9 @@
 import org.apache.ivy.core.module.descriptor.Configuration;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 import org.apache.ivy.core.settings.IvySettings;
+import org.apache.ivy.core.settings.IvyVariableContainerImpl;
 import org.apache.ivy.plugins.parser.AbstractModuleDescriptorParserTester;
+import org.apache.ivy.plugins.repository.file.FileResource;
 import org.apache.ivy.util.DefaultMessageLogger;
 import org.apache.ivy.util.Message;
 
@@ -58,4 +60,23 @@
         assertNotNull(md.getDependencies());
         assertEquals(0, md.getDependencies().length);
     }
+
+    public void testParseDescriptorWithWindowsPathToManifest() throws Exception {
+        // GIVEN
+        IvySettings ivySettings = new IvySettings();
+        ivySettings.load(new File("C:/java/workspace/ivysettings.xml"));
+        File manifestFile = new File(
+                "C:/java/workspace/de.metalevel.eclipse.mlbuild/META-INF/MANIFEST.MF"
+            );
+        // WHEN
+        FileResource res = new FileResource(null, manifestFile);
+        ModuleDescriptor md = OSGiManifestParser.getInstance().parseDescriptor(
+            ivySettings, manifestFile.toURL(), res, true);
+
+        // THEN
+        assertNotNull(md);
+        assertEquals("bundle", md.getModuleRevisionId().getOrganisation());
+        assertEquals("de.metalevel.eclipse.mlbuild.ivyPDE", md.getModuleRevisionId().getName());
+        assertEquals("1.0.0.qualifier", md.getModuleRevisionId().getRevision());
+    }
 }
