| Index: url/url_canon_relative.cc
 | 
| diff --git a/url/url_canon_relative.cc b/url/url_canon_relative.cc
 | 
| index 9436245d3793d296b97964a72dbdf5710bd6f6e6..06ca99cbe68e40b281ce2bae4c665e96cb24154b 100644
 | 
| --- a/url/url_canon_relative.cc
 | 
| +++ b/url/url_canon_relative.cc
 | 
| @@ -170,8 +170,8 @@ bool DoIsRelativeURL(const char* base,
 | 
|  // up until and including the last slash. There should be a slash in the
 | 
|  // range, if not, nothing will be copied.
 | 
|  //
 | 
| -// The input is assumed to be canonical, so we search only for exact slashes
 | 
| -// and not backslashes as well. We also know that it's ASCII.
 | 
| +// For stardard URLs the input should be canonical, but when resolving relative
 | 
| +// URLs on a non-standard base (like "data:") the input can be anything.
 | 
|  void CopyToLastSlash(const char* spec,
 | 
|                       int begin,
 | 
|                       int end,
 | 
| @@ -179,7 +179,7 @@ void CopyToLastSlash(const char* spec,
 | 
|    // Find the last slash.
 | 
|    int last_slash = -1;
 | 
|    for (int i = end - 1; i >= begin; i--) {
 | 
| -    if (spec[i] == '/') {
 | 
| +    if (spec[i] == '/' || spec[i] == '\\') {
 | 
|        last_slash = i;
 | 
|        break;
 | 
|      }
 | 
| 
 |