[Webkit-unassigned] [Bug 83664] [Refactoring] Move initial style setting for ProgressValueElement from attach method to createShadowSubtree method in HTMLProgressElement.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Apr 17 09:01:46 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=83664





--- Comment #4 from Takashi Sakamoto <tasak at google.com>  2012-04-17 09:01:46 PST ---
(In reply to comment #2)
> (From update of attachment 136812 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=136812&action=review
> 
> > Source/WebCore/html/HTMLProgressElement.cpp:91
> >  }
> 
> I'm sorry for the slow response.
> Could you call updateFromElement() at HTMLProgressElement::createRenderer() or some existing place?

I tried moving updateFromElement() to HTMLProgressElement::createRenderer(), i.e.
--- --- ---
{
  RenderObject* renderer = new (arena) RenderProgress(this);
  renderer->updateFromElement();
  return renderer;
}
--- --- ---

However, this change caused a problem:
----
[21190:21190:5720078002:ERROR:process_util_posix.cc(143)] Received signal 11
        base::debug::StackTrace::StackTrace() [0x864a2a]
        base::(anonymous namespace)::StackDumpSignalHandler() [0x82568d]
        0x7f0714b15af0
        WTF::RefPtr<>::get() [0x4b098c]
        WebCore::DataRef<>::get() [0x4b097e]
        WebCore::DataRef<>::operator->() [0x4aedba]
        WebCore::RenderStyle::appearance() [0x6cc6ae]
        WebCore::RenderStyle::hasAppearance() [0x6cc68a]
        WebCore::RenderProgress::updateAnimationState() [0x19cdc4a]
        WebCore::RenderProgress::updateFromElement() [0x19cda6e]
        WebCore::HTMLProgressElement::createRenderer() [0x26682fb]
        WebCore::NodeRendererFactory::createRenderer() [0x775b0d]
        WebCore::NodeRendererFactory::createRendererIfNeeded() [0x775e6e]
        WebCore::Node::createRendererIfNeeded() [0x757687]
        WebCore::Element::attach() [0x73052b]
        WebCore::HTMLProgressElement::attach() [0x2668434]
        WebCore::ContainerNode::attachChildren() [0x6cbca5]
        WebCore::ContainerNode::attach() [0x6c9b0e]
        WebCore::Element::attach() [0x7305a4]
        WebCore::updateTreeAfterInsertion() [0x6cb623]
        WebCore::ContainerNode::appendChild() [0x6c95a5]
----
As m_style is initialized to be NULL (in HTMLProgressElement::createRenderer), style()->hasAppearance() causes signal 11.
I'm not sure whether there exists some method which is called after finishing creating renderer or not.
I would like to ask your idea.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list