Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Issue 3021002: In ChromeFrame if window.open is received for a pending external tab, i.e. wh... (Closed)

Created:
10 years, 5 months ago by ananta
Modified:
9 years, 6 months ago
Reviewers:
amit
CC:
chromium-reviews, Paweł Hajdan Jr., ben+cc_chromium.org
Visibility:
Public.

Description

In ChromeFrame if window.open is received for a pending external tab, i.e. which has not received a connect from the host browser, currently we end up crashing chrome due to dereferencing a NULL automation channel. Ideally we should queue all IPC messages destined for a pending tab and send them out once we receive a connect. However that solution is tricky as the messages carry the tab handle as one of the arguments which is only available when we receive a connnect for the tab. The AutomationHandleTracker gives out these handles and is per automation provider. We may have different automation provider instances in the case of IE8 and hence we cannot pre compute the tab handle. Current solution is to add a NULL check around the offending code path which would basically drop the new contents notification. Fixes bug http://code.google.com/p/chromium/issues/detail?id=49188 Bug=49188 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=52780

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+6 lines, -1 line) Patch
M chrome/browser/external_tab_container_win.cc View 1 2 1 chunk +6 lines, -1 line 1 comment Download

Messages

Total messages: 2 (0 generated)
ananta
10 years, 5 months ago (2010-07-16 22:09:06 UTC) #1
amit
10 years, 5 months ago (2010-07-16 22:25:38 UTC) #2
lgtm

http://codereview.chromium.org/3021002/diff/8001/9001
File chrome/browser/external_tab_container_win.cc (right):

http://codereview.chromium.org/3021002/diff/8001/9001#newcode339
chrome/browser/external_tab_container_win.cc:339: delete new_contents;
we might have to do other cleanup corresponding to
RegisterRenderViewHostForAutomation etc here?

Powered by Google App Engine
This is Rietveld 408576698