diff options
author | DJ Houghton | 2010-03-31 21:38:15 +0000 |
---|---|---|
committer | DJ Houghton | 2010-03-31 21:38:15 +0000 |
commit | ef3b4115c66aa500354f3fa16a8a20ba1fe2362b (patch) | |
tree | f5951268affd05772515995dcb7dcda2eb882c0e /bundles/org.eclipse.equinox.p2.reconciler.dropins/src | |
parent | b277ad1810b902f17109adf61f91fa703ce052ad (diff) | |
download | rt.equinox.p2-ef3b4115c66aa500354f3fa16a8a20ba1fe2362b.tar.gz rt.equinox.p2-ef3b4115c66aa500354f3fa16a8a20ba1fe2362b.tar.xz rt.equinox.p2-ef3b4115c66aa500354f3fa16a8a20ba1fe2362b.zip |
Bug 304895 - [reconciler] Issues with encoded URLs in platform.xml
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.reconciler.dropins/src')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java b/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java index 95a21cb7c..15eab6283 100644 --- a/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java +++ b/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/PlatformXmlListener.java @@ -164,7 +164,7 @@ public class PlatformXmlListener extends DirectoryChangeListener { if (repo instanceof ExtensionLocationMetadataRepository) { try { File one = ExtensionLocationMetadataRepository.getBaseDirectory(repo.getLocation()); - File two = ExtensionLocationMetadataRepository.getBaseDirectory(URIUtil.fromString(urlString)); + File two = ExtensionLocationMetadataRepository.getBaseDirectory(new URI(urlString)); if (one.equals(two)) return repo; } catch (ProvisionException e) { @@ -204,7 +204,9 @@ public class PlatformXmlListener extends DirectoryChangeListener { continue; } String eclipseExtensionURL = siteURL + Constants.EXTENSION_LOCATION; - URI location = URIUtil.fromString(eclipseExtensionURL); + // use the URI constructor here and not URIUtil#fromString because + // our string is already encoded + URI location = new URI(eclipseExtensionURL); Map<String, String> properties = new HashMap<String, String>(); properties.put(SiteListener.SITE_POLICY, site.getPolicy()); @@ -226,7 +228,9 @@ public class PlatformXmlListener extends DirectoryChangeListener { } catch (ProvisionException inner) { // handle the case where someone has removed the extension location from // disk. Note: we use the siteURL not the eclipseextensionURL - URI fileURI = URIUtil.fromString(siteURL); + // use the URI constructor here and not URIUtil#fromString because + // our string is already encoded + URI fileURI = new URI(siteURL); File file = URIUtil.toFile(fileURI); if (file != null && !file.exists()) { toBeRemoved.add(site); |