| Index: url/url_util.cc
|
| diff --git a/url/url_util.cc b/url/url_util.cc
|
| index 8ab889feff4a5f181ffb65935be758a69605daf5..008a5e48b687dddb0d14f62743ba201763f3d97d 100644
|
| --- a/url/url_util.cc
|
| +++ b/url/url_util.cc
|
| @@ -238,15 +238,16 @@ bool DoResolveRelative(const char* base_spec,
|
| Parsed base_parsed_authority;
|
| ParseStandardURL(base_spec, base_spec_len, &base_parsed_authority);
|
| if (base_parsed_authority.host.is_nonempty()) {
|
| + RawCanonOutputT<char> temporary_output;
|
| bool did_resolve_succeed =
|
| ResolveRelativeURL(base_spec, base_parsed_authority, false, relative,
|
| - relative_component, charset_converter, output,
|
| - output_parsed);
|
| + relative_component, charset_converter,
|
| + &temporary_output, output_parsed);
|
| // The output_parsed is incorrect at this point (because it was built
|
| // based on base_parsed_authority instead of base_parsed) and needs to be
|
| // re-created.
|
| - ParsePathURL(output->data(), output->length(), true,
|
| - output_parsed);
|
| + DoCanonicalize(temporary_output.data(), temporary_output.length(), true,
|
| + charset_converter, output, output_parsed);
|
| return did_resolve_succeed;
|
| }
|
| } else if (is_relative) {
|
|
|