Index: chrome_frame/urlmon_url_request_private.h |
=================================================================== |
--- chrome_frame/urlmon_url_request_private.h (revision 45582) |
+++ chrome_frame/urlmon_url_request_private.h (working copy) |
@@ -36,7 +36,10 @@ |
HWND notification_window, IStream* cache); |
// Used from "DownloadRequestInHost". |
- void StealMoniker(IMoniker** moniker, IBindCtx** bctx); |
+ // Callback will be invoked either right away (if operation is finished) or |
+ // from inside ::OnStopBinding() when it is safe to reuse the bind_context. |
+ typedef Callback2<IMoniker*, IBindCtx*>::Type TerminateBindCallback; |
+ void TerminateBind(TerminateBindCallback* callback); |
// Parent Window for UrlMon error dialogs |
void set_parent_window(HWND parent_window) { |
@@ -110,6 +113,10 @@ |
return pending_; |
} |
+ bool terminate_requested() const { |
+ return terminate_bind_callback_.get() != NULL; |
+ } |
+ |
std::string response_headers() { |
return response_headers_; |
} |
@@ -271,6 +278,7 @@ |
// Set to true if the ChromeFrame instance is running in privileged mode. |
bool privileged_mode_; |
bool pending_; |
+ scoped_ptr<TerminateBindCallback> terminate_bind_callback_; |
std::string response_headers_; |
DISALLOW_COPY_AND_ASSIGN(UrlmonUrlRequest); |
}; |