Changeset 52299 in webkit
- Timestamp:
- Dec 17, 2009 9:42:26 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r52297 r52299 1 2009-12-17 Shinichiro Hamaji <hamaji@chromium.org> 2 3 Reviewed by Dan Bernstein. 4 5 marquee with display:inline causes crash 6 https://bugs.webkit.org/show_bug.cgi?id=32374 7 8 * fast/inline/inline-marquee-crash-expected.txt: Added. 9 * fast/inline/inline-marquee-crash.html: Added. 10 1 11 2009-12-17 Fumitoshi Ukai <ukai@chromium.org> 2 12 -
trunk/WebCore/ChangeLog
r52294 r52299 1 2009-12-17 Shinichiro Hamaji <hamaji@chromium.org> 2 3 Reviewed by Dan Bernstein. 4 5 marquee with display:inline causes crash 6 https://bugs.webkit.org/show_bug.cgi?id=32374 7 8 Test: fast/inline/inline-marquee-crash.html 9 10 * html/HTMLMarqueeElement.cpp: 11 (WebCore::HTMLMarqueeElement::start): 12 (WebCore::HTMLMarqueeElement::stop): 13 (WebCore::HTMLMarqueeElement::suspend): 14 (WebCore::HTMLMarqueeElement::resume): 15 (WebCore::HTMLMarqueeElement::renderMarquee): 16 * html/HTMLMarqueeElement.h: 17 * rendering/RenderLayer.cpp: 18 (WebCore::RenderLayer::styleChanged): 19 1 20 2009-12-17 Zoltan Horvath <zoltan@webkit.org> 2 21 -
trunk/WebCore/html/HTMLMarqueeElement.cpp
r45747 r52299 113 113 void HTMLMarqueeElement::start() 114 114 { 115 if ( renderer() && renderer()->hasLayer() && renderBox()->layer()->marquee())116 renderBox()->layer()->marquee()->start();115 if (RenderMarquee* marqueeRenderer = renderMarquee()) 116 marqueeRenderer->start(); 117 117 } 118 118 119 119 void HTMLMarqueeElement::stop() 120 120 { 121 if ( renderer() && renderer()->hasLayer() && renderBox()->layer()->marquee())122 renderBox()->layer()->marquee()->stop();121 if (RenderMarquee* marqueeRenderer = renderMarquee()) 122 marqueeRenderer->stop(); 123 123 } 124 124 … … 130 130 void HTMLMarqueeElement::suspend() 131 131 { 132 if ( renderer() && renderer()->hasLayer() && renderBox()->layer()->marquee())133 renderBox()->layer()->marquee()->suspend();132 if (RenderMarquee* marqueeRenderer = renderMarquee()) 133 marqueeRenderer->suspend(); 134 134 } 135 135 136 136 void HTMLMarqueeElement::resume() 137 137 { 138 if (renderer() && renderer()->hasLayer() && renderBox()->layer()->marquee()) 139 renderBox()->layer()->marquee()->updateMarqueePosition(); 138 if (RenderMarquee* marqueeRenderer = renderMarquee()) 139 marqueeRenderer->updateMarqueePosition(); 140 } 141 142 RenderMarquee* HTMLMarqueeElement::renderMarquee() const 143 { 144 if (renderer() && renderer()->hasLayer()) 145 return renderBoxModelObject()->layer()->marquee(); 146 return 0; 140 147 } 141 148 -
trunk/WebCore/html/HTMLMarqueeElement.h
r42161 r52299 29 29 namespace WebCore { 30 30 31 class RenderMarquee; 32 31 33 class HTMLMarqueeElement : public HTMLElement, private ActiveDOMObject { 32 34 public: … … 52 54 virtual void resume(); 53 55 56 RenderMarquee* renderMarquee() const; 57 54 58 int m_minimumDelay; 55 59 }; -
trunk/WebCore/rendering/RenderLayer.cpp
r52034 r52299 3318 3318 } 3319 3319 3320 if (renderer()->style()->overflowX() == OMARQUEE && renderer()->style()->marqueeBehavior() != MNONE ) {3320 if (renderer()->style()->overflowX() == OMARQUEE && renderer()->style()->marqueeBehavior() != MNONE && renderer()->isBox()) { 3321 3321 if (!m_marquee) 3322 3322 m_marquee = new RenderMarquee(this);
Note: See TracChangeset
for help on using the changeset viewer.