summaryrefslogtreecommitdiffstats
path: root/chrome_frame/http_negotiate.h
diff options
context:
space:
mode:
authortommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-21 20:07:35 +0000
committertommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-21 20:07:35 +0000
commit2b3102bea014c815d42aaf99a97e8da462a6ea5c (patch)
tree9bea75fee6c9dc116e0d5e4ee3e6fad600fafcd4 /chrome_frame/http_negotiate.h
parente70313140106d364cb359179773c656c6d84423c (diff)
downloadchromium_src-2b3102bea014c815d42aaf99a97e8da462a6ea5c.zip
chromium_src-2b3102bea014c815d42aaf99a97e8da462a6ea5c.tar.gz
chromium_src-2b3102bea014c815d42aaf99a97e8da462a6ea5c.tar.bz2
Only switch to cf for text/html. With opt-in URLs we could mark a URL to be loaded in CF regardless of the target mime type. If CF turns around and wants to download the target, we would hit an infinite loop.
TEST=Verify that issue 40046 is resolved. OptIn urls should work with the moniker patch and downloads should not cause an infinite loop. BUG=40046 Review URL: http://codereview.chromium.org/1715004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45226 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/http_negotiate.h')
-rw-r--r--chrome_frame/http_negotiate.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/chrome_frame/http_negotiate.h b/chrome_frame/http_negotiate.h
index 3146539..6a4848b 100644
--- a/chrome_frame/http_negotiate.h
+++ b/chrome_frame/http_negotiate.h
@@ -5,6 +5,7 @@
#ifndef CHROME_FRAME_HTTP_NEGOTIATE_H_
#define CHROME_FRAME_HTTP_NEGOTIATE_H_
+#include <shdeprecated.h>
#include <urlmon.h>
#include "base/basictypes.h"
@@ -69,4 +70,14 @@ class HttpNegotiatePatch {
DISALLOW_COPY_AND_ASSIGN(HttpNegotiatePatch);
};
+// Attempts to get to the associated browser service for an active request.
+HRESULT GetBrowserServiceFromProtocolSink(IInternetProtocolSink* sink,
+ IBrowserService** browser_service);
+
+// From the latest urlmon.h. Symbol name prepended with LOCAL_ to
+// avoid conflict (and therefore build errors) for those building with
+// a newer Windows SDK.
+// TODO(robertshield): Remove this once we update our SDK version.
+extern const int LOCAL_BINDSTATUS_SERVER_MIMETYPEAVAILABLE;
+
#endif // CHROME_FRAME_HTTP_NEGOTIATE_H_