<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>85797</bug_id>
          
          <creation_ts>2012-05-07 06:18:42 -0700</creation_ts>
          <short_desc>REGRESSION (Safari 5.1.5 - ToT): Crash in RenderSVGRoot::computeReplacedLogicalWidth</short_desc>
          <delta_ts>2012-06-22 11:20:00 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philip Rogers">pdr</reporter>
          <assigned_to name="Florin Malita">fmalita</assigned_to>
          <cc>ap</cc>
    
    <cc>eric</cc>
    
    <cc>fmalita</cc>
    
    <cc>krit</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>617557</commentid>
    <comment_count>0</comment_count>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-05-07 06:18:42 -0700</bug_when>
    <thetext>The following will cause a crash:

&lt;figcaption style=&quot;width:1px;&quot;&gt;
&lt;svg style=&quot;width:intrinsic;&quot;/&gt;

In debug builds, the following assert is hit:
ASSERTION FAILED: isEmbeddedThroughFrameContainingSVGDocument()
../../third_party/WebKit/Source/WebCore/rendering/svg/RenderSVGRoot.cpp(177) : virtual WebCore::LayoutUnit WebCore::RenderSVGRoot::computeReplacedLogicalWidth(bool) const

Original bug: http://crbug.com/126416</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617670</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-05-07 10:13:22 -0700</bug_when>
    <thetext>Crashes ToT, but not Safari 5.1.5 for me. Release build stack trace:

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x000000010c31ee38 WebCore::RenderSVGRoot::computeReplacedLogicalWidth(bool) const + 344
1   com.apple.WebCore             	0x000000010cb53295 WebCore::RenderBox::computeLogicalWidthInRegion(WebCore::RenderRegion*, WebCore::FractionalLayoutUnit) + 485
2   com.apple.WebCore             	0x000000010c1b2c0a WebCore::RenderBox::computeLogicalWidth() + 26
3   com.apple.WebCore             	0x000000010c31eb09 WebCore::RenderSVGRoot::layout() + 169
4   com.apple.WebCore             	0x000000010cb4c461 WebCore::RenderBlock::layoutInlineChildren(bool, WebCore::FractionalLayoutUnit&amp;, WebCore::FractionalLayoutUnit&amp;) + 913
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653766</commentid>
    <comment_count>2</comment_count>
    <who name="Florin Malita">fmalita</who>
    <bug_when>2012-06-20 12:27:22 -0700</bug_when>
    <thetext>The assert at the end of RenderSVGRoot::computeReplacedLogicalWidth() is wrong: we can also reach that point for inline SVGs when the width attribute doesn&apos;t establish the viewport (see SVGSVGElement::widthAttributeEstablishesViewport).

The release crash happens in

  return document()-&gt;frame()-&gt;ownerRenderer()-&gt;availableLogicalWidth()

because ownerRenderer() is NULL for the case of inline SVG.

This also seems to affect RenderSVGRoot::computeReplacedLogicalHeight().

I guess the question is what to do when

a) widthAttributeEstablishesViewport() == false
and
b) the SVG element is not embedded via object/iframe


Fall back to RenderReplace:::computeReplacedLogicalWidth?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653849</commentid>
    <comment_count>3</comment_count>
      <attachid>148647</attachid>
    <who name="Florin Malita">fmalita</who>
    <bug_when>2012-06-20 13:42:52 -0700</bug_when>
    <thetext>Created attachment 148647
Minimized crasher</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655541</commentid>
    <comment_count>4</comment_count>
      <attachid>149049</attachid>
    <who name="Florin Malita">fmalita</who>
    <bug_when>2012-06-22 10:09:04 -0700</bug_when>
    <thetext>Created attachment 149049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655629</commentid>
    <comment_count>5</comment_count>
      <attachid>149049</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-22 11:19:50 -0700</bug_when>
    <thetext>Comment on attachment 149049
Patch

Clearing flags on attachment: 149049

Committed r121041: &lt;http://trac.webkit.org/changeset/121041&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655630</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-22 11:20:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>148647</attachid>
            <date>2012-06-20 13:42:52 -0700</date>
            <delta_ts>2012-06-20 13:42:52 -0700</delta_ts>
            <desc>Minimized crasher</desc>
            <filename>svg-intrinsic.html</filename>
            <type>text/html</type>
            <size>71</size>
            <attacher name="Florin Malita">fmalita</attacher>
            
              <data encoding="base64">PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyI+CiAgPHN2ZyBzdHlsZT0id2lkdGg6IGludHJpbnNp
YzsiLz4KPC9kaXY+Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>149049</attachid>
            <date>2012-06-22 10:09:04 -0700</date>
            <delta_ts>2012-06-22 11:19:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85797-20120622130904.patch</filename>
            <type>text/plain</type>
            <size>5230</size>
            <attacher name="Florin Malita">fmalita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxMDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzE5MDc0Y2YyODk3ZmNk
YTc1YTIyY2Q5MDk0YjRlZmIyOTUxOGJhYS4uMTIwOTJmYTY5MGFiOGFmZjI5MzZhNDYyZDk2ZTk4
MjQzNzVlYmQzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA2LTIyICBGbG9y
aW4gTWFsaXRhICA8Zm1hbGl0YUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTiAo
U2FmYXJpIDUuMS41IC0gVG9UKTogQ3Jhc2ggaW4gUmVuZGVyU1ZHUm9vdDo6Y29tcHV0ZVJlcGxh
Y2VkTG9naWNhbFdpZHRoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD04NTc5NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRlc3Q6IHN2Zy9jdXN0b20vc3ZnLXdpZHRoLWludHJpbnNpYy1jcmFzaC5odG1sCisK
KyAgICAgICAgUmVuZGVyU1ZHUm9vdDo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoIGFzc3Vt
ZXMgdGhhdCBpZgorICAgICAgICBTVkdTVkdFbGVtZW50Ojp3aWR0aEF0dHJpYnV0ZUVzdGFibGlz
aGVzVmlld3BvcnQgcmV0dXJucyBmYWxzZSwgdGhlCisgICAgICAgIFNWRyBtdXN0IGJlIGVtYmVk
ZGVkIHZpYSA8b2JqZWN0Pi4gVGhpcyBpcyBub3QgYWx3YXlzIHRoZSBjYXNlLCB0aG91Z2g6Cisg
ICAgICAgIHdpZHRoQXR0cmlidXRlRXN0YWJsaXNoZXNWaWV3cG9ydCBjYW4gYWxzbyByZXR1cm4g
ZmFsc2UgZm9yIGlubGluZQorICAgICAgICBTVkcgaWYgaXQgZG9lc24ndCBoYXZlIGEgcmVwbGFj
ZWQgbG9naWNhbCB3aWR0aC4KKworICAgICAgICBVcGRhdGVkIGNvbXB1dGVSZXBsYWNlZExvZ2lj
YWx7V2lkdGgsSGVpZ2h0fSB0byBoYW5kbGUgdGhlCisgICAgICAgICF3aWR0aEF0dHJpYnV0ZUVz
dGFibGlzaGVzVmlld3BvcnQgJiYgIWlzRW1iZWRkZWRUaHJvdWdoRnJhbWVDb250YWluaW5nU1ZH
RG9jdW1lbnQKKyAgICAgICAgY2FzZSBncmFjZWZ1bGx5LgorCisgICAgICAgICogcmVuZGVyaW5n
L3N2Zy9SZW5kZXJTVkdSb290LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Jvb3Q6
OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJT
VkdSb290Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KToKKwogMjAxMi0wNi0yMiAgQW5k
cmV5IEtvc3lha292ICA8Y2FzZXFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0
b3I6IHRpbWVsaW5lIGV2ZW50IGRldGFpbHMgcG9wdXAgbWlzc2VzIENQVSB0aW1lCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jvb3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSb290LmNwcAppbmRleCA5NTUyODk1
MjlmYTlmMTllOTFmY2VjMTk4YWFkOWViNzQyZTgyMzBmLi5jMDk0NTdlNjFiMWI3NTkxNDczNDdk
ZmMwMDU4NTljNzIxMzA1ODRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3ZnL1JlbmRlclNWR1Jvb3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcv
UmVuZGVyU1ZHUm9vdC5jcHAKQEAgLTE3Myw5ICsxNzMsMTIgQEAgTGF5b3V0VW5pdCBSZW5kZXJT
VkdSb290Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoYm9vbCBpbmNsdWRlTWF4V2lkdGgp
IGNvbnMKICAgICBpZiAoc3ZnLT53aWR0aEF0dHJpYnV0ZUVzdGFibGlzaGVzVmlld3BvcnQoKSkK
ICAgICAgICAgcmV0dXJuIHJlc29sdmVMZW5ndGhBdHRyaWJ1dGVGb3JTVkcoc3ZnLT5pbnRyaW5z
aWNXaWR0aChTVkdTVkdFbGVtZW50OjpJZ25vcmVDU1NQcm9wZXJ0aWVzKSwgc3R5bGUoKS0+ZWZm
ZWN0aXZlWm9vbSgpLCBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlTG9naWNhbFdpZHRoKCks
IHZpZXcoKSk7CiAKLSAgICAvLyBPbmx5IFNWR3MgZW1iZWRkZWQgaW4gPG9iamVjdD4gcmVhY2gg
dGhpcyBwb2ludC4KLSAgICBBU1NFUlQoaXNFbWJlZGRlZFRocm91Z2hGcmFtZUNvbnRhaW5pbmdT
VkdEb2N1bWVudCgpKTsKLSAgICByZXR1cm4gZG9jdW1lbnQoKS0+ZnJhbWUoKS0+b3duZXJSZW5k
ZXJlcigpLT5hdmFpbGFibGVMb2dpY2FsV2lkdGgoKTsKKyAgICAvLyBTVkcgZW1iZWRkZWQgdGhy
b3VnaCBvYmplY3QvZW1iZWQvaWZyYW1lLgorICAgIGlmIChpc0VtYmVkZGVkVGhyb3VnaEZyYW1l
Q29udGFpbmluZ1NWR0RvY3VtZW50KCkpCisgICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5mcmFt
ZSgpLT5vd25lclJlbmRlcmVyKCktPmF2YWlsYWJsZUxvZ2ljYWxXaWR0aCgpOworCisgICAgLy8g
U1ZHIGVtYmVkZGVkIHZpYSBTVkdJbWFnZSAoYmFja2dyb3VuZC1pbWFnZS9ib3JkZXItaW1hZ2Uv
ZXRjKSAvIElubGluZSBTVkcuCisgICAgcmV0dXJuIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVw
bGFjZWRMb2dpY2FsV2lkdGgoaW5jbHVkZU1heFdpZHRoKTsKIH0KIAogTGF5b3V0VW5pdCBSZW5k
ZXJTVkdSb290Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KCkgY29uc3QKQEAgLTIwNSw5
ICsyMDgsMTIgQEAgTGF5b3V0VW5pdCBSZW5kZXJTVkdSb290Ojpjb21wdXRlUmVwbGFjZWRMb2dp
Y2FsSGVpZ2h0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIHJlc29sdmVMZW5ndGhBdHRyaWJ1dGVG
b3JTVkcoaGVpZ2h0LCBzdHlsZSgpLT5lZmZlY3RpdmVab29tKCksIGNvbnRhaW5pbmdCbG9jaygp
LT5hdmFpbGFibGVMb2dpY2FsSGVpZ2h0KCksIHZpZXcoKSk7CiAgICAgfQogCi0gICAgLy8gT25s
eSBTVkdzIGVtYmVkZGVkIGluIDxvYmplY3Q+IHJlYWNoIHRoaXMgcG9pbnQuCi0gICAgQVNTRVJU
KGlzRW1iZWRkZWRUaHJvdWdoRnJhbWVDb250YWluaW5nU1ZHRG9jdW1lbnQoKSk7Ci0gICAgcmV0
dXJuIGRvY3VtZW50KCktPmZyYW1lKCktPm93bmVyUmVuZGVyZXIoKS0+YXZhaWxhYmxlTG9naWNh
bEhlaWdodCgpOworICAgIC8vIFNWRyBlbWJlZGRlZCB0aHJvdWdoIG9iamVjdC9lbWJlZC9pZnJh
bWUuCisgICAgaWYgKGlzRW1iZWRkZWRUaHJvdWdoRnJhbWVDb250YWluaW5nU1ZHRG9jdW1lbnQo
KSkKKyAgICAgICAgcmV0dXJuIGRvY3VtZW50KCktPmZyYW1lKCktPm93bmVyUmVuZGVyZXIoKS0+
YXZhaWxhYmxlTG9naWNhbEhlaWdodCgpOworCisgICAgLy8gU1ZHIGVtYmVkZGVkIHZpYSBTVkdJ
bWFnZSAoYmFja2dyb3VuZC1pbWFnZS9ib3JkZXItaW1hZ2UvZXRjKSAvIElubGluZSBTVkcuCisg
ICAgcmV0dXJuIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KCk7
CiB9CiAKIHZvaWQgUmVuZGVyU1ZHUm9vdDo6bGF5b3V0KCkKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjY2ZhZWZhZGQzNDZj
MzBiMGMyNGIxZDYyNzlhZjI3YjZlMjVhNTM3Li4zMThmYmYwNTVkMGFkNmY3MjdhNTY0MjBhZTBh
ODFkMDI2OTFhNGI3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDYtMjIgIEZsb3JpbiBN
YWxpdGEgIDxmbWFsaXRhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSRUdSRVNTSU9OIChTYWZh
cmkgNS4xLjUgLSBUb1QpOiBDcmFzaCBpbiBSZW5kZXJTVkdSb290Ojpjb21wdXRlUmVwbGFjZWRM
b2dpY2FsV2lkdGgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg1Nzk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBzdmcvY3VzdG9tL3N2Zy13aWR0aC1pbnRyaW5zaWMtY3Jhc2gtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL3N2Zy13aWR0aC1pbnRyaW5zaWMtY3Jhc2guaHRt
bDogQWRkZWQuCisKIDIwMTItMDYtMjIgIFRha2FzaGkgU2FrYW1vdG8gIDx0YXNha0Bnb29nbGUu
Y29tPgogCiAgICAgICAgIFtTaGFkb3ddIHBhcmVudFRyZWVTY29wZSgpIG9mIG5lc3RlZCBzaGFk
b3cgRE9NIHN1YnRyZWUgcmV0dXJucyBkb2N1bWVudCgpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvc3ZnL2N1c3RvbS9zdmctd2lkdGgtaW50cmluc2ljLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3N2Zy9jdXN0b20vc3ZnLXdpZHRoLWludHJpbnNpYy1jcmFzaC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNzk0MDg3OWFkYjI0OWQwNGQyZWQxYWRkODk3ZjlhODQ5ZDMwZDA3OAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vc3ZnLXdpZHRoLWludHJp
bnNpYy1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQQVNTIChkaWRuJ3QgY3Jh
c2gpLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3N2Zy13aWR0aC1pbnRy
aW5zaWMtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vc3ZnLXdpZHRoLWludHJp
bnNpYy1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ3YTExZDhhM2M2NjZjZTJmMDQ1Njc2ZDczMDZk
NjAzOTBlNTQzOWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3N2
Zy13aWR0aC1pbnRyaW5zaWMtY3Jhc2guaHRtbApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGJvZHk+CisgIDwhLS0gVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg1Nzk3IC0tPgorICA8ZGl2PlBBU1MgKGRpZG4ndCBjcmFz
aCkuPC9kaXY+CisgIDxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsiPgorICAgIDxzdmcgc3R5bGU9
IndpZHRoOiBpbnRyaW5zaWM7Ii8+CisgIDwvZGl2PgorICA8c2NyaXB0PgorICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7CisgIDwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>