| Index: content/browser/browser_url_handler_impl.cc
|
| diff --git a/content/browser/browser_url_handler_impl.cc b/content/browser/browser_url_handler_impl.cc
|
| index 7ea7ff787b9950512615abcde874d22daa6ebe6c..438feb3ac4ec7df6b51cebf8b76970cdcefce9e6 100644
|
| --- a/content/browser/browser_url_handler_impl.cc
|
| +++ b/content/browser/browser_url_handler_impl.cc
|
| @@ -88,7 +88,8 @@ BrowserURLHandlerImpl* BrowserURLHandlerImpl::GetInstance() {
|
| return Singleton<BrowserURLHandlerImpl>::get();
|
| }
|
|
|
| -BrowserURLHandlerImpl::BrowserURLHandlerImpl() {
|
| +BrowserURLHandlerImpl::BrowserURLHandlerImpl() :
|
| + fixup_handler_(null_handler()) {
|
| AddHandlerPair(&DebugURLHandler, BrowserURLHandlerImpl::null_handler());
|
|
|
| GetContentClient()->browser()->BrowserURLHandlerCreated(this);
|
| @@ -100,6 +101,11 @@ BrowserURLHandlerImpl::BrowserURLHandlerImpl() {
|
| BrowserURLHandlerImpl::~BrowserURLHandlerImpl() {
|
| }
|
|
|
| +void BrowserURLHandlerImpl::SetFixupHandler(URLHandler handler) {
|
| + DCHECK_EQ(null_handler(), fixup_handler_);
|
| + fixup_handler_ = handler;
|
| +}
|
| +
|
| void BrowserURLHandlerImpl::AddHandlerPair(URLHandler handler,
|
| URLHandler reverse_handler) {
|
| url_handlers_.push_back(HandlerPair(handler, reverse_handler));
|
| @@ -118,6 +124,13 @@ void BrowserURLHandlerImpl::RewriteURLIfNecessary(
|
| }
|
| }
|
|
|
| +void BrowserURLHandlerImpl::FixupURLBeforeRewrite(
|
| + GURL* url,
|
| + BrowserContext* browser_context) {
|
| + if (fixup_handler_)
|
| + fixup_handler_(url, browser_context);
|
| +}
|
| +
|
| bool BrowserURLHandlerImpl::ReverseURLRewrite(
|
| GURL* url, const GURL& original, BrowserContext* browser_context) {
|
| for (size_t i = 0; i < url_handlers_.size(); ++i) {
|
|
|