From ecf2036064f8d3bf6843b26fee9a35e4b5599c7f Mon Sep 17 00:00:00 2001 From: Jeremy Long Date: Sun, 4 Aug 2013 14:44:53 -0400 Subject: [PATCH] attempting fix for Windows file:/// URI Former-commit-id: 53b125270575b436626f77e15c0d0ab801d075cb --- .../org/owasp/dependencycheck/utils/Downloader.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/utils/Downloader.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/utils/Downloader.java index 69b4be9b8..263f3b6ff 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/utils/Downloader.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/utils/Downloader.java @@ -130,10 +130,19 @@ public final class Downloader { public static long getLastModified(URL url) throws DownloadFailedException { long timestamp = 0; //TODO add the FPR protocol? - if ("file:".equalsIgnoreCase(url.getProtocol())) { + if ("file".equalsIgnoreCase(url.getProtocol())) { File f; try { - f = new File(url.toURI()); + if (System.getProperty("os.name").toLowerCase().startsWith("windows")) { + String filePath = url.toString(); + if (filePath.matches("file://[a-zA-Z]:.*")) { + f = new File(filePath.substring(7)); + } else { + f = new File(url.toURI()); + } + } else { + f = new File(url.toURI()); + } } catch (URISyntaxException ex) { final String msg = String.format("Unable to locate '%s'; is the cve.url-2.0.modified property set correctly?", url.toString()); throw new DownloadFailedException(msg);