diff --git a/mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp b/mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp index ca3d98a6291..907d775f30d 100644 --- a/mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp +++ b/mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp @@ -332,13 +332,16 @@ nsResProtocolHandler::ResolveURI(nsIURI *uri, nsACString &result) if (filepath.FindChar(':') != -1) return NS_ERROR_MALFORMED_URI; + const char *p = path.get() + 1; // path always starts with a slash + NS_ASSERTION(*(p-1) == '/', "Path did not begin with a slash!"); + + if (*p == '/') + return NS_ERROR_MALFORMED_URI; + nsCOMPtr baseURI; rv = GetSubstitution(host, getter_AddRefs(baseURI)); if (NS_FAILED(rv)) return rv; - const char *p = path.get() + 1; // path always starts with a slash - NS_ASSERTION(*(p-1) == '/', "Path did not begin with a slash!"); - rv = baseURI->Resolve(nsDependentCString(p, path.Length()-1), result); #if defined(PR_LOGGING)