Fix resource scanning for Windows file conventions.
GWT internally uses "/" as a path separator, the old resource code
used to construct paths one directory at a time (so it would never
have to process file separators). The new resource code receives
paths from the operating system, hence there is a need to normalize
them for consumption by the rest of the resource handling code.
Change-Id: I1794314224a55b6fa7a2c1f1e9084b10da536444
diff --git a/dev/core/src/com/google/gwt/dev/resource/impl/ResourceAccumulator.java b/dev/core/src/com/google/gwt/dev/resource/impl/ResourceAccumulator.java
index 9e5dc90..45709b2 100644
--- a/dev/core/src/com/google/gwt/dev/resource/impl/ResourceAccumulator.java
+++ b/dev/core/src/com/google/gwt/dev/resource/impl/ResourceAccumulator.java
@@ -21,6 +21,7 @@
import com.google.gwt.thirdparty.guava.common.collect.Maps;
import com.google.gwt.thirdparty.guava.common.collect.Multimap;
+import java.io.File;
import java.io.IOException;
import java.lang.ref.WeakReference;
import java.nio.file.DirectoryStream;
@@ -185,7 +186,8 @@
}
private String getRelativePath(Path directory) {
- return rootDirectory.relativize(directory).toString();
+ // Make sure that paths are exposed "Unix" style to PathPrefixSet.
+ return rootDirectory.relativize(directory).toString().replace(File.separator, "/");
}
private PathPrefixSet getPathPrefixSet() {