summaryrefslogtreecommitdiffstats
path: root/chrome_frame/utils.h
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-13 01:27:22 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-13 01:27:22 +0000
commite33f99a191db9341991d5b42f4da594d1ed15e3a (patch)
treef881998c37a1a2eb1e45852864eeda1d7f50d81e /chrome_frame/utils.h
parent92ff337e2bb148581011ddf6c8d14d3ace50d626 (diff)
downloadchromium_src-e33f99a191db9341991d5b42f4da594d1ed15e3a.zip
chromium_src-e33f99a191db9341991d5b42f4da594d1ed15e3a.tar.gz
chromium_src-e33f99a191db9341991d5b42f4da594d1ed15e3a.tar.bz2
IE would not switch into ChromeFrame if the url being navigated to had an anchor. The IsTopLevelUrl function exposed by the navigation manager
would compare the URL received in the BHO which has the anchor and the URL received from the anchor which does not have the anchor. As a result we would not wrap the bind status callback which caused this issue. The IsTopLevelUrl function now compares the URLs after stripping the anchor portion in the URL. Should fix bug http://code.google.com/p/chromium/issues/detail?id=38265. This only works if the moniker patch is enabled. Bug=38265 Test=Covered by unit test. Review URL: http://codereview.chromium.org/1559027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44309 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/utils.h')
-rw-r--r--chrome_frame/utils.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/chrome_frame/utils.h b/chrome_frame/utils.h
index ad5a335..b6f6dd0 100644
--- a/chrome_frame/utils.h
+++ b/chrome_frame/utils.h
@@ -19,6 +19,8 @@
#include "base/logging.h"
#include "base/thread.h"
+#include "googleurl/src/gurl.h"
+
// utils.h : Various utility functions and classes
extern const wchar_t kChromeContentPrefix[];
@@ -406,4 +408,10 @@ extern Lock g_ChromeFrameHistogramLock;
// used for IE privacy stuff.
int32 MapCookieStateToCookieAction(InternetCookieState cookie_state);
+// Parses the url passed in and returns a GURL instance without the fragment.
+GURL GetUrlWithoutFragment(const wchar_t* url);
+
+// Compares the URLs passed in after removing the fragments from them.
+bool CompareUrlsWithoutFragment(const wchar_t* url1, const wchar_t* url2);
+
#endif // CHROME_FRAME_UTILS_H_