summaryrefslogtreecommitdiffstats
path: root/chrome_frame/bind_context_info.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove Chrome Frame code and resources.grt@chromium.org2014-01-101-114/+0
| | | | | | | | | BUG=316496 TBR=ben@chromium.org Review URL: https://codereview.chromium.org/126143005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244113 0039d316-1c4b-4281-b951-d872f2087c98
* Include base/win/scoped_comptr.h instead of base/scoped_comptr_win.h.tfarina@chromium.org2011-04-121-3/+3
| | | | | | | | | | | | | | | | | Fix up all the callers to use the new location and namespace. Also, delete the stub file since it isn't included by anyone more. (Note: This was a TODO for brettw). BUG=None TEST=None R=brettw@chromium.org Review URL: http://codereview.chromium.org/6825055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81303 0039d316-1c4b-4281-b951-d872f2087c98
* If we switch into ChromeFrame as a result of a redirect then we need to ↵ananta@chromium.org2011-02-221-16/+4
| | | | | | | | | | | | | | | | | | | | | navigate chrome to the correct URL to ensure that scripts on the page see the correct URL. This functionality regressed when the protocol sink patch landed. Fix is to read the URL from the ProtData object which wraps the underlying protocol sink, when our active document loads. Removed stale code from the Chromeframe moniker patch which eventually needs to go. Fixes bug http://code.google.com/p/chromium/issues/detail?can=2&q=71860 BUG=71860 TEST=As described in the bug. Review URL: http://codereview.chromium.org/6469103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75656 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crasher observed in ChromeFrame stable build 7.0.517.43. Crash occurs ↵ananta@chromium.org2010-10-251-0/+9
| | | | | | | | | | | | | | | | | | | | when we attempt to terminate the urlmon transaction with a spurious BindToObject call which is supposed to fail but release the transaction. While this works mostly it causes a crash in urlmon at times on IE7. To workaround this we now save away the IInternetProtocol interface which represents the transaction object in our bind context info structure which is maintained per bind context and terminate the protocol when we want the transaction to be destroyed. Fixes bug http://code.google.com/p/chromium/issues/detail?id=60370 Bug=60370 Review URL: http://codereview.chromium.org/3984006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63769 0039d316-1c4b-4281-b951-d872f2087c98
* Remove scoped_bstr_win, fix all callers to use the new location.brettw@chromium.org2010-10-201-7/+6
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3748012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63216 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash in ChromeFrame full tab mode while processing the attach ↵ananta@chromium.org2010-08-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | external tab request, which comes in during window open. We create a ProtData object instance which is mapped to the protocol with a NULL read function pointer which was used to indicate if this is a dummy request. It appears that there are cases where we may receive a StartEx call with a reused protocol pointer. which basically causes a crash in the context of IInternetProtocolSink::ReportData which internally calls IInternetProtocol::LockRequest, which crashes as the transaction never started. Fix is to invalidate the protdata mapping if the protdata has not been destroyed yet, but the underlying Transaction has been destroyed. This can happen if the original bind context has not yet been destroyed Fixes bug http://code.google.com/p/chromium/issues/detail?id=50814 Bug=50814,50956 Test=Subsequent CL. Review URL: http://codereview.chromium.org/3078010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54553 0039d316-1c4b-4281-b951-d872f2087c98
* A new way of hooking internet protocols.stoyan@chromium.org2010-06-091-1/+10
| | | | | | | | TEST=chrome frame tests Review URL: http://codereview.chromium.org/2620001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49265 0039d316-1c4b-4281-b951-d872f2087c98
* Candidate fix for bug 44108. The FromBindContext function was inherently ↵tommi@chromium.org2010-05-141-4/+9
| | | | | | | | | | | | | racy as it returned a pointer to a non-addrefed pointer and the AddRef/Release implementation in the BindContextInfo was not thread safe. Also fixed BSCBStorageBind object leak. TEST=See bug description BUG=44108 Review URL: http://codereview.chromium.org/2080005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47306 0039d316-1c4b-4281-b951-d872f2087c98
* Use an interface to get to the C++ object pointer instead of casting directly.tommi@chromium.org2010-05-131-6/+32
| | | | | | | | | | | The object was being marshalled so, we were casting an ole32 proxy object to our implementation. To avoid marshalling altogether I'm also using the FTM. So, yeah, we're going belt and suspenders. TEST=See bug. BUG=43988 Review URL: http://codereview.chromium.org/2011016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47160 0039d316-1c4b-4281-b951-d872f2087c98
* In ChromeFrame with the IMoniker patch on, we should save away the redirect ↵ananta@chromium.org2010-04-201-0/+9
| | | | | | | | | | | | | | | | information received for the initial pending request. This is to ensure that we inform Chrome about this redirect which can then be followed correctly from Chrome. The other change is to save away the URL being navigated to in the bind context context object. This is also updated if we receive a redirect notification in our callback wrapper. The active document refers this URL if it is available and falls back to the old mechanism of retrieving the URL from the moniker if not. This ensures that optin urls continue to work correctly if the initial page is redirected. Review URL: http://codereview.chromium.org/1523028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45114 0039d316-1c4b-4281-b951-d872f2087c98
* We need to specify at least one entry in the COM map of the bind information ↵ananta@chromium.org2010-04-161-0/+1
| | | | | | | | | | object used by ChromeFrame to maintain contextual information. Having an empty map causes an ATLASSERT to fire in debug builds. Review URL: http://codereview.chromium.org/1559037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44846 0039d316-1c4b-4281-b951-d872f2087c98
* With the ChromeFrame moniker patch on, the data cache maintained to indicate ↵ananta@chromium.org2010-04-161-2/+0
| | | | | | | | | | | | | | | whether we should switch to Chrome, was not being drained correctly to the delegate, resulting in the delegate continuing to wait for more data when there was none. This caused sites like go/wave to not redirect correctly to CF. Fixes bug http://code.google.com/p/chromium/issues/detail?id=41365 Bug=41365 Review URL: http://codereview.chromium.org/1637017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44735 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid a crash in ChromeFrame in the BindToStorage call initiated when our ↵ananta@chromium.org2010-04-151-0/+66
active document is loaded. The crash occurs while dereferencing a NULL delegate which is the case in the pending request object created by the active document to handle the initial load. Fix for this is to maintain a pending state in the request object. We ignore all OnProgress notifications in this state. When Chrome requests data for the top level url this state is cleared. Consolidated the number of bind context information structures into one which contains everything we need in ChromeFrame, i.e. to decide to switch to Chrome, indicating whether the request came from Chrome, etc. Review URL: http://codereview.chromium.org/1654012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44604 0039d316-1c4b-4281-b951-d872f2087c98