diff --git a/projects/samskivert/src/java/com/samskivert/net/PathUtil.java b/projects/samskivert/src/java/com/samskivert/net/PathUtil.java
index e174250d..d9ead4a2 100644
--- a/projects/samskivert/src/java/com/samskivert/net/PathUtil.java
+++ b/projects/samskivert/src/java/com/samskivert/net/PathUtil.java
@@ -45,4 +45,27 @@ public class PathUtil
return newComponent;
}
}
+
+ /**
+ * Appends the supplied affix to the specified source path, ensuring
+ * that exactly one path separator (/ as we are dealing
+ * with URLs here not platform specific file-system paths) is used
+ * between the two. Note: this means that the affix will be
+ * made into a relative path regardless of whether or not it starts
+ * with a /.
+ */
+ public static String appendPath (String source, String affix)
+ {
+ if (source.endsWith("/")) {
+ if (affix.startsWith("/")) {
+ return source + affix.substring(1);
+ } else {
+ return source + affix;
+ }
+ } else if (affix.startsWith("/")) {
+ return source + affix;
+ } else {
+ return source + "/" + affix;
+ }
+ }
}