Thanks for the info!  Could you dump this into a bug report?

Thanks,
-Darin


On Mon, Mar 23, 2009 at 9:01 AM, Craig Schlenter
<[email protected]>wrote:

> On Sun, Mar 22, 2009 at 1:01 AM, Darin Fisher <[email protected]> wrote:
> > It would be nice to track down the source of the null NativeViewId.  I
> bet
> > that corresponds to a real bug.
>
> Here's a backtrace from the renderer with host_window_ == NULL
> obtained from clicking on a link in an email in gmail:
>
> (gdb) bt
> #0  RenderWidget::GetRootWindowRect (this=0x9330530,
> webwidget=0x932ffc0, rect=0xb77b4508) at renderer/render_widget.cc:602
> #1  0x011808f1 in ChromeClientImpl::windowRect (this=0x90b76b8) at
> /home/craig/chromium.git/src/webkit/glue/chrome_client_impl.cc:100
> #2  0x07692c3c in WebCore::Chrome::windowRect (this=0x9338000) at
> /home/craig/chromium.git/src/third_party/WebKit/WebCore/page/Chrome.cpp:119
> #3  0x07a435e7 in WebCore::FrameLoader::createWindow (this=0x8b3715c,
> frameLoaderForFrameLookup=0x8a6caac, reque...@0xb77b47b4,
> featur...@0xb77b4b54,
>    creat...@0xb77b4abb) at
>
> /home/craig/chromium.git/src/third_party/WebKit/WebCore/loader/FrameLoader.cpp:380
> #4  0x0444ec13 in createWindow (openerFrame=0x8a6ca80,
> u...@0xb77b4bcc, framena...@0xb77b4bc8, windowfeatur...@0xb77b4b54,
> dialogArgs=
>        {<v8::Handle<v8::Value>> = {val_ = 0x0}, <No data fields>})
>    at
> /home/craig/chromium.git/src/third_party/WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp:270
> #5  0x0444fee0 in WebCore::V8Custom::v8DOMWindowOpenCallback
> (ar...@0xb77b4ce4)
>    at
> /home/craig/chromium.git/src/third_party/WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp:492
> #6  0x0806e20d in Builtin_HandleApiCall (__argc__=4,
> __argv__=0xb77b4da0) at
> /home/craig/chromium.git/src/v8/src/builtins.cc:380
>
> After poking at some code and inserting the odd printf, it seems as if
> RenderView::CreateWebView is calling RenderView::Create and passing a
> _hardcoded_ NULL as the parent_hwnd which is then passed to
> RenderView::Init where host_window_ is set to parent_hwnd which is
> NULL. That NULL would seem to me to be wrong. If it's not wrong, the
> other  initialisation path for host_window_ is
> RenderWidget::CompleteInit which is called from
> RenderWidget::OnCreatingNewAck. The CreatingNewAck message should be
> sent by RenderWidgetHost::Init() but I never see that being called
> when creating the error.
>
> Hopefully that's enough detail for someone who actually understands
> what these things do to propose a fix :)
>
> It looks trivial to squash sending the NULL to the browser to in
> RenderWidget::GetRootWindowRect but that is probably not the right
> fix.
>
> Thank you,
>
> --Craig
>

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: [email protected] 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to